--- loncom/interface/printout.pl 2001/10/02 14:10:40 1.1 +++ loncom/interface/printout.pl 2002/08/01 18:09:27 1.13 @@ -1,8 +1,39 @@ #!/usr/bin/perl +use IO::File; +use Image::Magick; print "Content-type: text/html\n\n"; print "\n"; -print "

EXAMPLE

\n"; -my $texfile = $ENV{'QUERY_STRING'}; +print "

OUTPUT is in the PDF FILE (see link below)

\n"; +my ($texfile,$laystyle) = split(/&/,$ENV{'QUERY_STRING'}); +my $figfile = $texfile; +$figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/; +my $duefile = $texfile; +$duefile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.due/; +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 ";} + } + } + unlink $figfile; +} +print "$texfile\n"; $_ = $texfile; m/^(.*)\/([^\/]+)$/; my $name_file = $2; @@ -12,21 +43,34 @@ my $path_file = $1.'/'; $name_file =~ s/\.tex/\.dvi/; my $new_name_file = $name_file; $new_name_file =~ s/\.dvi/\.ps/; -my $pro_fun = "dvips -o $new_name_file"; - system("$pro_fun $name_file"); -my $name_file = $new_name_file; - $name_file =~ s/\.ps/\.pdf/; - system("ps2pdf $new_name_file $name_file"); - - -#print "Your PDF document\n"; +my $comma = "dvips -o $new_name_file"; + system("$comma $name_file"); + $_ = $new_name_file; + m/^(.*)\./; +my $tempo_file = $1.'temporar.ps'; +my $name_file = $1.'.pdf'; +if ($laystyle eq 'album') { + $comma = "psnup -2 -s1.0 $new_name_file"; + system("$comma $tempo_file"); + system("ps2pdf $tempo_file $name_file"); +} elsif ($laystyle eq 'book') { + system("ps2pdf $new_name_file $name_file"); +} +my $texlog = $texfile; +my $texaux = $texfile; +my $texdvi = $texfile; +my $texps = $texfile; +$texlog =~ s/\.tex/\.log/; +$texaux =~ s/\.tex/\.aux/; +$texdvi =~ s/\.tex/\.dvi/; +$texps =~ s/\.tex/\.ps/; +my @garb = ($texlog,$texaux,$texdvi,$texps); +unlink @garb; +unlink $duefile; +print "Your PDF document\n"; print "\n"; -# my $ere; -# foreach $ere (%ENV) { -# print(' SS '.$ere.' => '.$ENV{$ere}.' FF '."\n\n"); -# } - +