--- loncom/interface/printout.pl 2002/08/14 20:38:52 1.18
+++ loncom/interface/printout.pl 2003/06/04 23:38:14 1.26
@@ -2,8 +2,19 @@
use IO::File;
use Image::Magick;
print "Content-type: text/html\n\n";
- print "
\n";
- my ($texfile,$laystyle,$numberofcolumns) = split(/&/,$ENV{'QUERY_STRING'});
+print (<
+function LONCAPAreg() {
+ swmenu=window.open('',"LCmenumsul1","",false);swmenu.windowloaded(self.name);
+}
+
+function LONCAPAstale() {
+ swmenu=window.open('',"LCmenumsul1","",false);swmenu.windowunloaded(self.name);
+}
+
+ENDSCRIPT
+ print "\n";
+ my ($texfile,$laystyle,$numberofcolumns,$selectionmade) = split(/&/,$ENV{'QUERY_STRING'});
my $figfile = $texfile;
$figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/;
my $duefile = $texfile;
@@ -29,6 +40,15 @@ use Image::Magick;
$image->Set(page => '+100+200');
$status = $image->Write($eps_f);
if ($status) {print " $status ";}
+ #check is eps exist in prtspool
+ if(not -e $eps_f) {
+ for (my $i=0;$i<10000;$i++) {
+ if (-e $eps_f.'.'.$i) {
+ rename $eps_f.'.'.$i, $eps_f;
+ last;
+ }
+ }
+ }
}
}
unlink $figfile;
@@ -48,12 +68,17 @@ use Image::Magick;
my $body_log_file = join(' ',@content_of_file);
if ($body_log_file=~m/!\s+Emergency stop/) {
#LaTeX failed to parse tex file
- print "LaTeX could not successfully parse your tex file.
";
- print "It probably has errors in it.
";
- print "Here are the error messages in the LaTeX log file";
+ print "LaTeX could not successfully parse your tex file.
";
+ print "It probably has errors in it.
";
+ my $whereitbegins = rindex $body_log_file,'STAMPOFPASSEDRESOURCESTART';
+ my $whereitends = rindex $body_log_file,'STAMPOFPASSEDRESOURCEEND';
+ if ($whereitbegins!=-1 and $whereitends!=-1) {
+ print "With very high probability this error occured in ".substr($body_log_file,$whereitbegins+26,$whereitends-$whereitbegins-26)."
";
+ }
+ print "Here are the error messages in the LaTeX log file
";
my $sygnal = 0;
for (my $i=0;$i<=$#content_of_file;$i++) {
- if ($content_of_file[$i]=~m/^!/) {
+ if ($content_of_file[$i]=~m/^Runaway argument?/ or $content_of_file[$i]=~m/^!/) {
$sygnal = 1;
}
if ($content_of_file[$i]=~m/Here is how much of/) {
@@ -68,23 +93,23 @@ use Image::Magick;
$name_file =~ s/\.tex/\.dvi/;
my $new_name_file = $name_file;
$new_name_file =~ s/\.dvi/\.ps/;
- my $comma = "dvips -o $new_name_file";
- system("$comma $name_file");
+ my $comma = "dvips -Ppdf -G0 -o $new_name_file";
+ system("$comma $name_file 1>/dev/null 2>/dev/null");
if (-e $new_name_file) {
- print "OUTPUT is in the PDF FILE (see link below)
\n";
+ print "Successfully created PDF output file (click on link below)
\n";
$new_name_file =~ m/^(.*)\./;
my $tempo_file = $1.'temporar.ps';
my $name_file = $1.'.pdf';
- if ($laystyle eq 'album') {
+ if ($laystyle eq 'album' and $numberofcolumns eq '2') {
$comma = "psnup -2 -s1.0 $new_name_file";
- system("$comma $tempo_file");
- system("ps2pdf $tempo_file $name_file");
+ system("$comma $tempo_file 1>/dev/null 2>/dev/null");
+ system("ps2pdf $tempo_file $name_file 1>/dev/null 2>/dev/null");
} elsif ($laystyle eq 'book' and $numberofcolumns eq '2') {
- $comma = 'pstops "2:0+1(0.5w,0)"';
- system("$comma $new_name_file $tempo_file");
- system("ps2pdf $tempo_file $name_file");
+ $comma = 'pstops -pletter "2:0+1(0.48w,0)"';
+ system("$comma $new_name_file $tempo_file 1>/dev/null 2>/dev/null");
+ system("ps2pdf $tempo_file $name_file 1>/dev/null 2>/dev/null");
} else {
- system("ps2pdf $new_name_file $name_file");
+ system("ps2pdf $new_name_file $name_file 1>/dev/null 2>/dev/null");
}
my $texlog = $texfile;
my $texaux = $texfile;
@@ -95,7 +120,7 @@ use Image::Magick;
$texdvi =~ s/\.tex/\.dvi/;
$texps =~ s/\.tex/\.ps/;
my @garb = ($texlog,$texaux,$texdvi,$texps);
- #unlink @garb;
+# unlink @garb;
unlink $duefile;
print "Your PDF document";
print "\n";