Diff for /loncom/interface/printout.pl between versions 1.14 and 1.27

version 1.14, 2002/08/06 16:11:05 version 1.27, 2003/06/06 02:24:49
Line 3  use IO::File; Line 3  use IO::File;
 use Image::Magick;  use Image::Magick;
  print "Content-type: text/html\n\n";   print "Content-type: text/html\n\n";
  print "<body bgcolor=\"#FFFFFF\">\n";   print "<body bgcolor=\"#FFFFFF\">\n";
   my ($texfile,$laystyle) = split(/&/,$ENV{'QUERY_STRING'});    my ($texfile,$laystyle,$numberofcolumns,$selectionmade) = split(/&/,$ENV{'QUERY_STRING'});
   my $figfile = $texfile;    my $figfile = $texfile;
   $figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/;    $figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/;
   my $duefile = $texfile;    my $duefile = $texfile;
Line 29  use Image::Magick; Line 29  use Image::Magick;
       $image->Set(page => '+100+200');         $image->Set(page => '+100+200'); 
       $status = $image->Write($eps_f);            $status = $image->Write($eps_f);    
       if ($status) {print "  $status  ";}        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;        unlink $figfile;
Line 39  use Image::Magick; Line 48  use Image::Magick;
   my $path_file = $1.'/';    my $path_file = $1.'/';
   chdir $path_file;    chdir $path_file;
   system("latex $name_file 1>/dev/null 2>/dev/null");    system("latex $name_file 1>/dev/null 2>/dev/null");
   $name_file =~ s/\.tex/\.dvi/;    #Do we have a latex error in the log file?
   if (-e $name_file) {    my $logfilename = $texfile;
       #if dvi file exist = LaTeX successfully parsed tex file     $logfilename =~ s/\.tex$/\.log/;
       print "<h1>OUTPUT is in the PDF FILE (see link below)</h1>\n";    my $temporary_file=IO::File->new($logfilename) || die "Couldn't open file for reading: $!\n";
     my @content_of_file = <$temporary_file>;
     close $temporary_file; 
     my $body_log_file = join(' ',@content_of_file); 
     if ($body_log_file=~m/!\s+Emergency stop/) {
         #LaTeX failed to parse tex file 
         print "<h2>LaTeX could not successfully parse your tex file.</h2>";
         print "It probably has errors in it.<br />";
         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)."<br /><br />";
         }
         print "Here are the error messages in the LaTeX log file</br><br />";
         my $sygnal = 0;
         for (my $i=0;$i<=$#content_of_file;$i++) {
             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/) {
         $sygnal = 0;
     } 
     if ($sygnal) {
         print "$content_of_file[$i]<br />";
     }  
         } 
     } else {
         #LaTeX successfully parsed tex file 
         $name_file =~ s/\.tex/\.dvi/;
       my $new_name_file = $name_file;        my $new_name_file = $name_file;
       $new_name_file =~ s/\.dvi/\.ps/;        $new_name_file =~ s/\.dvi/\.ps/;
       my $comma = "dvips -o $new_name_file";        my $comma = "dvips -Ppdf -G0 -o $new_name_file";
       system("$comma $name_file");        system("$comma $name_file 1>/dev/null 2>/dev/null");
       $_ = $new_name_file;        if (-e $new_name_file) {
       m/^(.*)\./;    print "<h1><h1>Successfully created PDF output file (see link below)</h1>\n";
       my $tempo_file = $1.'temporar.ps';    $new_name_file =~ m/^(.*)\./;
       my $name_file = $1.'.pdf';    my $tempo_file = $1.'temporar.ps';
       if ($laystyle eq 'album') {    my $name_file = $1.'.pdf';
   $comma = "psnup -2 -s1.0 $new_name_file";    if ($laystyle eq 'album' and $numberofcolumns eq '2') {
   system("$comma $tempo_file");         $comma = "psnup -2 -s1.0 $new_name_file";
   system("ps2pdf $tempo_file $name_file");        system("$comma $tempo_file 1>/dev/null 2>/dev/null"); 
       } elsif ($laystyle eq 'book') {        system("ps2pdf $tempo_file $name_file 1>/dev/null 2>/dev/null");
   system("ps2pdf $new_name_file $name_file");    } elsif ($laystyle eq 'book' and $numberofcolumns eq '2') {
       }            $comma = 'pstops -pletter "2:0+1(0.48w,0)"';
       my $texlog = $texfile;        system("$comma $new_name_file $tempo_file 1>/dev/null 2>/dev/null");
       my $texaux = $texfile;        system("ps2pdf $tempo_file $name_file 1>/dev/null 2>/dev/null");
       my $texdvi = $texfile;    } else {
       my $texps = $texfile;        system("ps2pdf $new_name_file $name_file 1>/dev/null 2>/dev/null");
       $texlog =~ s/\.tex/\.log/;    }    
       $texaux =~ s/\.tex/\.aux/;    my $texlog = $texfile;
       $texdvi =~ s/\.tex/\.dvi/;    my $texaux = $texfile;
       $texps =~ s/\.tex/\.ps/;    my $texdvi = $texfile;
       my @garb = ($texlog,$texaux,$texdvi,$texps);    my $texps = $texfile;
       unlink @garb;    $texlog =~ s/\.tex/\.log/;
       unlink $duefile;    $texaux =~ s/\.tex/\.aux/;
       print "<a href=\"/prtspool/$name_file\">Your PDF document</a>";    $texdvi =~ s/\.tex/\.dvi/;
       print "\n";    $texps =~ s/\.tex/\.ps/;
   } else {    my @garb = ($texlog,$texaux,$texdvi,$texps);
       print "<h1>LaTeX could not successfully parse your tex file.</h1>";  #  unlink @garb;
       print "<h2>Probably, you have errors in it.</h2>";    unlink $duefile;
       my $logfilename = $texfile;    print "<a href=\"/prtspool/$name_file\">Your PDF document</a>";
       $logfilename =~ s/\.tex$/\.log/;    print "\n";
       if (-e $logfilename) {       
           #if dvi file does not exist = LaTeX failed to parse tex file   
   print "To give you a clue we show you a few lines from the LaTeX log file</br>";  
   my $temporary_file=IO::File->new($logfilename) || die "Couldn't open file for reading: $!\n";  
   my @content_of_file = <$temporary_file>;  
   close $temporary_file;   
   my $sygnal = 0;  
   for (my $i=0;$i<=$#content_of_file;$i++) {  
       if ($content_of_file[$i]=~m/^!/) {  
   $sygnal = 1;  
       }   
       if ($content_of_file[$i]=~m/Here is how much of/) {  
   $sygnal = 0;  
       }   
       if ($sygnal) {  
   print "$content_of_file[$i]<br />";  
       }  
   
   }   
 #  my $content_file_string = join(' ',@content_of_file);  
             
 #  print "$content_file_string\n";  
       }        }
   }    }
   
   
     
   
   
   
   
   

Removed from v.1.14  
changed lines
  Added in v.1.27


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>