#!/usr/bin/perl use IO::File; use Image::Magick; print "Content-type: text/html\n\n"; print "
\n"; my ($texfile,$laystyle,$numberofcolumns,$selectionmade) = split(/&/,$ENV{'QUERY_STRING'}); my $figfile = $texfile; $figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/; my $duefile = $texfile; $duefile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.due/; #do we have figures? if (-e $figfile) { my $temporary_file=IO::File->new($figfile) || die "Couldn't open file for reading: $!\n"; my @content_of_file = <$temporary_file>; close $temporary_file; my $noteps; foreach $not_eps (@content_of_file) { if ($not_eps ne '') { my $eps_f = $not_eps; $eps_f =~ s/\.[^.]*$/\.eps/i; $_ = $eps_f; m/\/([^\/]+)$/; $eps_f = '/home/httpd/prtspool/'.$1; my $image = Image::Magick->new; $not_eps =~ s/^\s+//; $not_eps =~ s/\s+$//; $status = $image->Read($not_eps); if ($status) {print " $status ";} $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; } #print "$texfile\n"; #name of the tex file for debugging only $texfile =~ m/^(.*)\/([^\/]+)$/; my $name_file = $2; my $path_file = $1.'/'; chdir $path_file; system("latex $name_file 1>/dev/null 2>/dev/null"); #Do we have a latex error in the log file? my $logfilename = $texfile; $logfilename =~ s/\.tex$/\.log/; 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 "