--- loncom/interface/printout.pl 2024/10/21 19:32:10 1.175 +++ loncom/interface/printout.pl 2024/11/01 00:08:03 1.176 @@ -1,7 +1,7 @@ #!/usr/bin/perl # CGI-script to run LaTeX, dvips, ps2ps, ps2pdf etc. # -# $Id: printout.pl,v 1.175 2024/10/21 19:32:10 raeburn Exp $ +# $Id: printout.pl,v 1.176 2024/11/01 00:08:03 raeburn Exp $ # # Copyright Michigan State University Board of Trustees # @@ -448,7 +448,7 @@ foreach $texfile (@texfile) { # Explicitly include a switch for papertype, otherwise dvips will default # to whatever is listed first in config.ps (which in most cases is a4). my $papera; - unless ($paper eq '') { + unless (($paper eq '') || (($laystyle eq 'album') && ($numberofcolumns eq '1'))) { $papera='-t'.$paper; } my $extra_ps_header = $perlvar{'lonLib'} .'/includepsheader.ps'; @@ -505,7 +505,9 @@ foreach $texfile (@texfile) { $new_name_file =~ m/^(.*)\./; my $ps_file = my $tempo_file = $1.'temporar.ps'; my $pdf_file = $1.'.pdf'; - $papera=~s/t/p/; + unless ($paper eq '') { + $papera='-p'.$paper; + } #---- # The code below uses fixps to make pdf include in sequences work. # @@ -567,7 +569,24 @@ foreach $texfile (@texfile) { } } if ($laystyle eq 'album' and $numberofcolumns eq '2') { - $comma = "psnup $papera -2 -s1.0 $new_name_file"; + my $canscale; + if (open(PIPE,"psnup --version 2>&1 |")) { + while () { + chomp(); + if (/^psnup\s+release\s+(\d+)/) { + if ($1 < 2) { + $canscale = 1; + } + last; + } + } + close(PIPE); + } + if ($canscale) { + $comma = "psnup $papera -2 -s1.0 $new_name_file"; + } else { + $comma = "psnup $papera -2 $new_name_file"; + } &debug("PSNUP command: $comma"); &busy_wait_command("$comma $tempo_file 1>/dev/null 2>/dev/null", "for $status_statement now Modifying PS layout",