[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/^(.*)\/([^\/]+)$/;