--- loncom/interface/printout.pl 2002/08/23 20:02:22 1.20
+++ loncom/interface/printout.pl 2003/03/05 16:28:04 1.22
@@ -3,7 +3,7 @@ use IO::File;
use Image::Magick;
print "Content-type: text/html\n\n";
print "
\n";
- my ($texfile,$laystyle,$numberofcolumns) = split(/&/,$ENV{'QUERY_STRING'});
+ my ($texfile,$laystyle,$numberofcolumns,$selectionmade) = split(/&/,$ENV{'QUERY_STRING'});
my $figfile = $texfile;
$figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/;
my $duefile = $texfile;
@@ -57,12 +57,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/) {
@@ -84,12 +89,12 @@ use Image::Magick;
$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");
} elsif ($laystyle eq 'book' and $numberofcolumns eq '2') {
- $comma = 'pstops -pletter "2:0+1(0.5w,0)"';
+ $comma = 'pstops -pletter "2:0+1(0.48w,0)"';
system("$comma $new_name_file $tempo_file");
system("ps2pdf $tempo_file $name_file");
} else {
@@ -104,7 +109,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";