Diff for /loncom/interface/printout.pl between versions 1.167 and 1.173

version 1.167, 2020/02/18 23:57:54 version 1.173, 2024/10/16 17:48:08
Line 447  foreach $texfile (@texfile) { Line 447  foreach $texfile (@texfile) {
   $new_name_file =~ s/\.dvi/\.ps/;    $new_name_file =~ s/\.dvi/\.ps/;
 # Explicitly include a switch for papertype, otherwise dvips will default  # Explicitly include a switch for papertype, otherwise dvips will default
 # to whatever is listed first in config.ps (which in most cases is a4).  # to whatever is listed first in config.ps (which in most cases is a4).
 # Historically (since 2004) LON-CAPA printing expected to use the default,    my $papera;
 # i.e., a papertype of a4, when the user selected letter [8 1/2 x 11 in]     unless ($paper eq '') {
 # in the Layout options, so I follow that convention if $papera is letter.          $papera='-t'.$paper;
   my $papera=$paper;    }
   if ($papera eq 'letter') {$papera='a4';}  
   if ($papera ne '') {$papera='-t'.$papera;}  
   my $extra_ps_header = $perlvar{'lonLib'} .'/includepsheader.ps';    my $extra_ps_header = $perlvar{'lonLib'} .'/includepsheader.ps';
   my $comma = "dvips $papera -h $extra_ps_header -Ppdf -G0 -o  $new_name_file";    my $comma = "dvips $papera -h $extra_ps_header -Ppdf -G0 -o  $new_name_file";
   &busy_wait_command("$comma $name_file 1>/dev/null 2>/dev/null",    &busy_wait_command("$comma $name_file 1>/dev/null 2>/dev/null",
Line 522  foreach $texfile (@texfile) { Line 520  foreach $texfile (@texfile) {
   
       # Use gs to fix the postscript -> level 1.5         # Use gs to fix the postscript -> level 1.5 
       # .. if pdfs were included        # .. if pdfs were included
         #
         # pswrite device was removed from ghostscript 9.09 and later,
         # (ps2write device is used instead).
         # check which device is available, and use as the value
                 # passed via -sDEVICE= arg in gs call to fix the postscript.
         #
   
       if ($pdfs_converted > 0) {        if ($pdfs_converted > 0) {
   $comma = "gs -sDEVICE=pswrite -dLanguageLevel=1.5 ";    my @possdevices = qw(ps2write pswrite);
   &busy_wait_command("$comma -o $tempo_file $new_name_file 2>/dev/null 1>/dev/null",    my $device;
      "for $status_statement now validating PS",    foreach my $poss (@possdevices) {
      \%prog_state, $tempo_file);        if (open(PIPE,"gs -h |grep ' $poss ' 2>&1 |")) {
               my $output = <PIPE>;
             close(PIPE);
             chomp($output);
             if ($output =~ /\Q $poss \E/) {
                 $device = $poss;
             }
         }
         last if ($device ne '');
     }
     if ($device ne '') {
         my ($major,$minor);
         if (open(PIPE,"gs -v |grep 'GPL Ghostscript' 2>&1 |")) {
             my $info = <PIPE>;
             close(PIPE);
             chomp($info);
             if ($info =~ /Ghostscript\s+(\d+)\.(\d+)/) {
                 ($major,$minor) = ($1,$2);
             }
         }
         $comma = "gs -sDEVICE=$device -dLanguageLevel=1.5 ";
         if (($major > 9) || (($major == 9) && ($minor >= 50))) {
             $comma .= '--permit-file-read=* ';
         }
         &busy_wait_command("$comma -o $tempo_file $new_name_file 2>/dev/null 1>/dev/null",
            "for $status_statement now validating PS",
            \%prog_state, $tempo_file);
   
 #---  #---
   &busy_wait_command("mv $tempo_file $new_name_file",        if (-e $tempo_file) {
      'File move', \%prog_state, $new_name_file);            &busy_wait_command("mv $tempo_file $new_name_file",
                'File move', \%prog_state, $new_name_file);
         }
     }
       }        }
       if ($laystyle eq 'album' and $numberofcolumns eq '2') {        if ($laystyle eq 'album' and $numberofcolumns eq '2') {
   $comma = "psnup $papera -2 -s1.0 $new_name_file";    $comma = "psnup $papera -2 -s1.0 $new_name_file";
Line 984  sub convert_figure { Line 1017  sub convert_figure {
  &File::Path::mkpath($path,0,0777);   &File::Path::mkpath($path,0,0777);
  $not_eps =~ s/^\s+//;   $not_eps =~ s/^\s+//;
  $not_eps =~ s/\s+$//;   $not_eps =~ s/\s+$//;
  $not_eps =~ s/ /\\ /g;  
     my $prettyname=$not_eps;      my $prettyname=$not_eps;
  if ($advanced_role) {   if ($advanced_role) {
     $prettyname=~s|$perlvar{'lonDocRoot'}/|/|;      $prettyname=~s|$perlvar{'lonDocRoot'}/|/|;

Removed from v.1.167  
changed lines
  Added in v.1.173


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>