[LON-CAPA-cvs] cvs: loncom /interface printout.pl
sakharuk
lon-capa-cvs@mail.lon-capa.org
Fri, 12 Apr 2002 13:46:11 -0000
sakharuk Fri Apr 12 09:46:11 2002 EDT
Modified files:
/loncom/interface printout.pl
Log:
added eps production mechanism
Index: loncom/interface/printout.pl
diff -u loncom/interface/printout.pl:1.5 loncom/interface/printout.pl:1.6
--- loncom/interface/printout.pl:1.5 Wed Apr 10 12:23:24 2002
+++ loncom/interface/printout.pl Fri Apr 12 09:46:11 2002
@@ -1,38 +1,28 @@
#!/usr/bin/perl
- use Image::Magick;
+use IO::File;
print "Content-type: text/html\n\n";
print "<body bgcolor=\"#FFFFFF\">\n";
print "<h1>OUTPUT is in the PDF FILE below</h1>\n";
-my ($texfile,$laystyle,$notepslist) = split(/&/,$ENV{'QUERY_STRING'});
-
-#if ($notepslist ne '') {
-# my $image = Image::Magick->new;
- my $newnotepslist = $notepslist;
- $newnotepslist =~ s/\.eps/\.gif/;
-# $image->Read("gif:$newnotepslist");
-# $image->Set(page => '+100+200');
- $_ = $notepslist;
- m/\/(\w+\.eps)/;
- $notepslist = $1;
-# $image->Write("eps:$notepslist");
-# open(EPS,$notepslist) or die "Couldn't open the EPS file: $!";
-# undef $/;
-# my $eps = <EPS>;
-# close EPS;
- $notepslist = '/home/httpd/prtspool/'.$1;
-# open(OUT,'>'.$notepslist) or die "Couldn't open the output EPS file: $!";
-# print OUT <<EndPrint;
-#/Times-Roman findfont 48 scalefont setfont
-#100 150 moveto
-#(This is an EPS graphic) show
-#EndPrint
-#print OUT $notepslist;
-#print OUT "showpage\n";
-#close OUT;
- print" aaa: $newnotepslist\n";
- print" bbb: $notepslist\n CCC: ";
- system("convert gif:$newnotepslist eps:$notepslist" );
-#}
+my ($texfile,$laystyle,$needconvert) = split(/&/,$ENV{'QUERY_STRING'});
+if ($needconvert) {
+ my $temporary_file=IO::File->new($texfile) || die "Couldn't open file for reading: $!\n";
+ my @content_of_file = <$temporary_file>;
+ my $content_file_string = join(' ',@content_of_file);
+ my $b_noteps = index($content_file_string,'\needepsconversion{',0);
+ while ($b_noteps != -1) {
+ my $e_noteps = index($content_file_string,'}',$b_noteps);
+ my $notepslist = substr($content_file_string,$b_noteps+19,$e_noteps-$b_noteps-19);
+ my $newnotepslist = $notepslist;
+ $newnotepslist =~ s/\..*$/\.eps/;
+ $_ = $newnotepslist;
+ m/\/(\w+\.eps)/;
+ $newnotepslist = $1;
+ $newnotepslist = '/home/httpd/prtspool/'.$1;
+ system("convert gif:$notepslist eps:$newnotepslist" );
+ $b_noteps = index($content_file_string,'\needepsconversion{',$e_noteps);
+ }
+ close $temporary_file;
+}
print "$texfile\n";
$_ = $texfile;
m/^(.*)\/([^\/]+)$/;