--- loncom/interface/printout.pl 2005/11/15 20:53:06 1.93
+++ loncom/interface/printout.pl 2006/04/24 21:31:03 1.94.2.1
@@ -186,6 +186,8 @@ END
@names_pack=split(/_ENDPERSON_/,$student_names);
}
+print "Return to last resource.
";
+
my $figfile = $texfile;
$figfile =~ s/^([^\.]+printout)[^t]+\.tex/$1\.dat/;
my $duefile = $texfile;
@@ -201,6 +203,7 @@ END
my $noteps;
my %prog_state;
if ($advanced_role) { %prog_state=&Apache::lonhtmlcommon::Create_PrgWin('','Coverting Images to EPS','Picture Conversion Status',$#content_of_file,'inline','80'); }
+ print('
');
foreach my $not_eps (@content_of_file) {
chomp($not_eps);
if ($not_eps ne '') {
@@ -239,15 +242,36 @@ END
$done_conversion{$not_eps}=1;
# print "Converting $not_eps -> $eps_f"; # Debugging
system("convert $not_eps $eps_f");
- #check is eps exist in prtspool
- if(not -e $eps_f) {
+ # check is eps exist in prtspool
+ if (not -e $eps_f) {
+ # converting an animated gif creates either:
+ # anim.gif.eps.0
+ # or
+ # anim.gif-0.eps
for (my $i=0;$i<10000;$i++) {
if (-e $eps_f.'.'.$i) {
- rename $eps_f.'.'.$i, $eps_f;
+ rename($eps_f.'.'.$i, $eps_f);
+ last;
+ }
+ my $anim_eps = $eps_f;
+ $anim_eps =~ s/(\.[^.]*)\.eps$/$1-$i\.eps/i;
+ if (-e $anim_eps) {
+ rename($anim_eps, $eps_f);
last;
}
}
- }
+ }
+ # imagemagick 6.2.0-6.2.7 fails to properly handle
+ # convert anim.gif anim.gif.eps
+ # it creates anim.eps instead.
+ if (not -e $eps_f) {
+ my $eps_f2 = $eps_f;
+ $eps_f2 =~ s/\.[^.]*\.eps$/\.eps/i;
+ if(-e $eps_f2) {
+ rename($eps_f2,$eps_f);
+ }
+ }
+
}
}
if ($advanced_role) {
@@ -269,7 +293,6 @@ END
my $ind=-1;
my %prog_state;
-print "Return to last resource.
";
if ($advanced_role) { %prog_state=&Apache::lonhtmlcommon::Create_PrgWin('','Print Status','Class Print Status',$number_of_files,'inline','80'); }
print "
";
my $num_files = @texfile;