--- loncom/interface/lonprintout.pm 2004/08/13 17:40:55 1.323 +++ loncom/interface/lonprintout.pm 2004/11/13 09:18:52 1.335 @@ -1,7 +1,7 @@ # The LearningOnline Network # Printout # -# $Id: lonprintout.pm,v 1.323 2004/08/13 17:40:55 sakharuk Exp $ +# $Id: lonprintout.pm,v 1.335 2004/11/13 09:18:52 albertel Exp $ # # Copyright Michigan State University Board of Trustees # @@ -41,10 +41,7 @@ use Apache::lonnavmaps; use Apache::lonratedt; use POSIX qw(strftime); use Apache::lonlocal; -use GDBM_File; - -my %hash; my $LaTeXwidth = 0; @@ -229,7 +226,7 @@ sub character_chart { $result =~ s/&(\#219|Ucirc);/\\^{U}/g; $result =~ s/&(\#220|Uuml);/\\\"{U}/g; $result =~ s/&(\#221|Yacute);/\\\'{Y}/g; - $result =~ s/&(\#223|szlig);/\\ss/g; + $result =~ s/&(\#223|szlig);/{\\ss}/g; $result =~ s/&(\#224|agrave);/\\\`{a}/g; $result =~ s/&(\#225|aacute);/\\\'{a}/g; $result =~ s/&(\#226|acirc);/\\^{a}/g; @@ -373,170 +370,110 @@ sub character_chart { } + #width, height, oddsidemargin, evensidemargin, topmargin +my %page_formats= + ('letter' => { + 'book' => { + '1' => [ '7.1 in','10.2 in', '-0.57 in','-0.57 in','0 in'], + '2' => ['3.66 in','10.2 in', '-0.57 in','-0.57 in','0 in'] + }, + 'album' => { + '1' => [ '8.8 in', '6.8 in','-40 pt in', '-60 pt','0 in'], + '2' => [ '4.4 in', '6.8 in','-0.5 in', '-1.5 in','3.5 in'] + }, + }, + 'legal' => { + 'book' => { + '1' => ['7.1 in','13 in',,'-0.57 in','-0.57 in','-0.5 in'], + '2' => ['3.16 in','13 in','-0.57 in','-0.57 in','-0.5 in'] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'tabloid' => { + 'book' => { + '1' => ['9.8 in','16 in','-0.57 in','-0.57 in','-0.5 in'], + '2' => ['4.9 in','16 in','-0.57 in','-0.57 in','-0.5 in'] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'executive' => { + 'book' => { + '1' => ['6.8 in','9 in','-0.57 in','-0.57 in','1.2 in'], + '2' => ['3.1 in','9 in','-0.57 in','-0.57 in','1.2 in'] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'a2' => { + 'book' => { + '1' => [], + '2' => [] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'a3' => { + 'book' => { + '1' => [], + '2' => [] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'a4' => { + 'book' => { + '1' => ['176 mm','272 mm','-40 pt in','-60 pt','-0.5 in'], + '2' => [ '91 mm','272 mm','-40 pt in','-60 pt','-0.5 in'] + }, + 'album' => { + '1' => ['8.5 in','7.7 in','-40 pt in','-60 pt','0 in'], + '2' => ['3.9 in','7.7 in','-40 pt in','-60 pt','0 in'] + }, + }, + 'a5' => { + 'book' => { + '1' => [], + '2' => [] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + 'a6' => { + 'book' => { + '1' => [], + '2' => [] + }, + 'album' => { + '1' => [], + '2' => [] + }, + }, + ); + sub page_format { # -#Correspondence between $papersize variable and real paper format: -# 0 - "Letter [8 1/2x11 in]" -# 1 - "Legal [8 1/2x14 in]" -# 2 - "Ledger/Tabloid [11x17 in]" -# 3 - "Executive [7 1/2x10 in]" -# 4 - "A2 [420x594 mm]" -# 5 - "A3 [297x420 mm]" -# 6 - "A4 [210x297 mm]" -# 7 - "A5 [148x210 mm]" -# 8 - "A6 [105x148 mm]" +#Supported paper format: "Letter [8 1/2x11 in]", "Legal [8 1/2x14 in]", +# "Ledger/Tabloid [11x17 in]", "Executive [7 1/2x10 in]", +# "A2 [420x594 mm]", "A3 [297x420 mm]", +# "A4 [210x297 mm]", "A5 [148x210 mm]", +# "A6 [105x148 mm]" # my ($papersize,$layout,$numberofcolumns) = @_; - my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin) = (0,0,0,0,0); - if ($papersize eq '0') { - if ($layout eq 'book') { - if ($numberofcolumns == 1) { - $textwidth = '7.1 in'; #'18 cm'; - $textheight = '10.2 in'; #'25.9 cm'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - } elsif ($numberofcolumns == 2) { - $textwidth = '3.66 in'; #'93 mm'; - $textheight = '10.2 in'; #'25.9 cm'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - } - } elsif ($layout eq 'album') { - if ($numberofcolumns eq '1') { - $textwidth = '8.8 in'; - $textheight = '6.8 in'; - $oddoffset = '-40 pt'; - $evenoffset = '-60 pt'; - } elsif ($numberofcolumns == 2) { - $textwidth = '4.4 in'; - $textheight = '6.8 in'; - $oddoffset = '-0.5 in'; - $evenoffset = '-1.5 in'; - $topmargin = '3.5 in'; - } - } -<<<<<<< lonprintout.pm - } elsif($papersize eq '1') { - if ($layout eq 'book') { - if ($numberofcolumns == 1) { - $textwidth = '7.1 in'; - $textheight = '13 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } elsif ($numberofcolumns == 2) { - $textwidth = '3.66 in'; - $textheight = '13 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } - } elsif ($layout eq 'album') { - if ($numberofcolumns eq '1') { -# $textwidth = '8.8 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-40 pt'; -# $evenoffset = '-60 pt'; - } elsif ($numberofcolumns == 2) { -# $textwidth = '4.4 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-0.5 in'; -# $evenoffset = '-1.5 in'; -# $topmargin = '3.5 in'; - } - } - } elsif($papersize eq '2') { - if ($layout eq 'book') { - if ($numberofcolumns == 1) { - $textwidth = '9.8 in'; - $textheight = '16 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } elsif ($numberofcolumns == 2) { - $textwidth = '4.9 in'; - $textheight = '16 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } - } elsif ($layout eq 'album') { - if ($numberofcolumns eq '1') { -# $textwidth = '8.8 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-40 pt'; -# $evenoffset = '-60 pt'; - } elsif ($numberofcolumns == 2) { -# $textwidth = '4.4 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-0.5 in'; -# $evenoffset = '-1.5 in'; -# $topmargin = '3.5 in'; - } - } - } elsif($papersize eq '3') { - if ($layout eq 'book') { - if ($numberofcolumns == 1) { - $textwidth = '7 in'; - $textheight = '9 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } elsif ($numberofcolumns == 2) { - $textwidth = '3.5 in'; - $textheight = '9 in'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } - } elsif ($layout eq 'album') { - if ($numberofcolumns eq '1') { -# $textwidth = '8.8 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-40 pt'; -# $evenoffset = '-60 pt'; - } elsif ($numberofcolumns == 2) { -# $textwidth = '4.4 in'; -# $textheight = '6.8 in'; -# $oddoffset = '-0.5 in'; -# $evenoffset = '-1.5 in'; -# $topmargin = '3.5 in'; - } - } - } elsif($papersize eq '6') { - if ($layout eq 'book') { - if ($numberofcolumns == 1) { - $textwidth = '176 mm'; - $textheight = '272 mm'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } elsif ($numberofcolumns == 2) { - $textwidth = '91 mm'; - $textheight = '272 mm'; - $oddoffset = '-0.57 in'; - $evenoffset = '-0.57 in'; - $topmargin = '-0.5 in'; - } - } elsif ($layout eq 'album') { - if ($numberofcolumns eq '1') { - $textwidth = '8.5 in'; - $textheight = '7.7 in'; - $oddoffset = '-40 pt'; - $evenoffset = '-60 pt'; - } elsif ($numberofcolumns == 2) { - $textwidth = '3.9 in'; - $textheight = '7.7 in'; - $oddoffset = '-40 pt'; - $evenoffset = '-60 pt'; - } - } -# } elsif($papersize eq '5') { -# } elsif($papersize eq '4') { -# } elsif($papersize eq '7') { -# } elsif($papersize eq '8') { - } - return $textwidth,$textheight,$oddoffset,$evenoffset,$topmargin; + return @{$page_formats{$papersize}->{$layout}->{$numberofcolumns}}; } @@ -572,16 +509,21 @@ sub page_format_transformation { if (defined($courseidinfo)) { $courseidinfo=' - '.$courseidinfo } my $topmargintoinsert = ''; if ($topmargin ne '0') {$topmargintoinsert='\setlength{\topmargin}{'.$topmargin.'}';} + my $fancypagestatement=''; + if ($numberofcolumns eq '2') { + $fancypagestatement="\\fancyhead{}\\fancyhead[LO]{\\textbf{$name} $courseidinfo \\hfill \\thepage \\\\ \\textit{$assignment}}"; + } else { + $fancypagestatement="\\rhead{}\\chead{}\\lhead{\\textbf{$name} $courseidinfo \\hfill \\thepage \\\\ \\textit{$assignment}}"; + } if ($layout eq 'album') { - $text =~ s/\\begin{document}/\\setlength{\\oddsidemargin}{$oddoffset}\\setlength{\\evensidemargin}{$evenoffset}$topmargintoinsert\\setlength{\\textwidth}{$textwidth}\\setlength{\\textheight}{$textheight}\\setlength{\\textfloatsep}{8pt plus 2\.0pt minus 4\.0pt}\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\usepackage{fancyhdr}\\pagestyle{fancy}\\rhead{}\\chead{}\\lhead{\\textbf{$name} $courseidinfo \\hfill \\thepage \\\\ \\textit{$assignment}} \\begin{document}\\voffset=-0\.8 cm\\setcounter{page}{1} /; + $text =~ s/\\begin{document}/\\setlength{\\oddsidemargin}{$oddoffset}\\setlength{\\evensidemargin}{$evenoffset}$topmargintoinsert\\setlength{\\textwidth}{$textwidth}\\setlength{\\textheight}{$textheight}\\setlength{\\textfloatsep}{8pt plus 2\.0pt minus 4\.0pt}\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\usepackage{fancyhdr}\\addtolength{\\headheight}{\\baselineskip}\\pagestyle{fancy}$fancypagestatement\\begin{document}\\voffset=-0\.8 cm\\setcounter{page}{1} /; } elsif ($layout eq 'book') { - if ($choice ne 'All class print') { - $text =~ s/\\begin{document}/\\textheight $textheight\\oddsidemargin = $evenoffset\\evensidemargin = $evenoffset $topmargintoinsert\\textwidth= $textwidth\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\usepackage{fancyhdr}\\pagestyle{fancy}\\rhead{}\\chead{}\\lhead{\\textbf{$name} $courseidinfo \\hfill \\thepage \\\\ \\textit{$assignment}}\\begin{document}\\voffset=-0\.8 cm\\setcounter{page}{1}/; + $text =~ s/\\begin{document}/\\textheight $textheight\\oddsidemargin = $evenoffset\\evensidemargin = $evenoffset $topmargintoinsert\\textwidth= $textwidth\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\usepackage{fancyhdr}\\addtolength{\\headheight}{\\baselineskip}\\pagestyle{fancy}$fancypagestatement\\begin{document}\\voffset=-0\.8 cm\\setcounter{page}{1}/; } else { $text =~ s/\\pagestyle{fancy}\\rhead{}\\chead{}\s*\\begin{document}/\\textheight = $textheight\\oddsidemargin = $evenoffset\\evensidemargin = $evenoffset $topmargintoinsert\\textwidth= $textwidth\\newlength{\\minipagewidth}\\setlength{\\minipagewidth}{\\textwidth\/\$number_of_columns-0\.2cm}\\renewcommand{\\ref}{\\keephidden\}\\pagestyle{fancy}\\rhead{}\\chead{}\\begin{document}\\voffset=-0\.8cm\\setcounter{page}{1} \\vskip 5 mm /; } - if ($papersize eq '6') { + if ($papersize eq 'a4') { $text =~ s/(\\begin{document})/$1\\special{papersize=210mm,297mm}/; } } @@ -609,9 +551,11 @@ sub page_cleanup { sub details_for_menu { - - my $name_of_resourse = &Apache::lonnet::gettitle($ENV{'form.postdata'}); - my $symbolic = &Apache::lonnet::symbread($ENV{'form.postdata'}); + my ($helper)=@_; + my $postdata=$ENV{'form.postdata'}; + if (!$postdata) { $postdata=$helper->{VARS}{'postdata'}; } + my $name_of_resource = &Apache::lonnet::gettitle($postdata); + my $symbolic = &Apache::lonnet::symbread($postdata); my ($map,$id,$resource)=&Apache::lonnet::decode_symb($symbolic); $map=&Apache::lonnet::clutter($map); my $name_of_sequence = &Apache::lonnet::gettitle($map); @@ -624,8 +568,7 @@ sub details_for_menu { $ENV{'request.course.uri'} =~ m|([^/]+)$|; $name_of_map = $1; } - return ($name_of_resourse,$name_of_sequence,$name_of_map); - + return ($name_of_resource,$name_of_sequence,$name_of_map); } @@ -720,24 +663,21 @@ sub print_latex_header { } sub path_to_problem { - my ($urlp,$LaTeXwidth)=@_; + my ($urlp,$colwidth)=@_; my $newurlp = ''; - $LaTeXwidth=~s/\s*mm\s*$//; - my $HowMany = length($urlp)*2; - if ($HowMany > $LaTeXwidth) { - my @temporrary = split '/',$urlp; - my $HowManyNew = 0; - for (my $ii=0;$ii<=$#temporrary;$ii++) { - if ($temporrary[$ii] ne '') { - $HowManyNew += length($temporrary[$ii])*2; - if ($HowManyNew < $LaTeXwidth ) { - $newurlp .= '/'.$temporrary[$ii]; - } else { - $HowManyNew = 0; - $newurlp .= '|\vskip -1 mm \noindent \verb|'; - $ii--; - } + $colwidth=~s/\s*mm\s*$//; +#characters average about 2 mm in width + if (length($urlp)*2 > $LaTeXwidth) { + my @elements = split '/',$urlp; + my $curlength=0; + foreach my $element (@elements) { + if ($curlength+(length($element)*2) > $colwidth) { + $newurlp .= '|\vskip -1 mm \noindent \verb|'; + $curlength=0; + } else { + $curlength+=length($element)*2; } + $newurlp.='/'.$element; } } else { $newurlp=$urlp; @@ -1073,7 +1013,7 @@ ENDPART my $courseidinfo = &get_course(); if (defined($courseidinfo)) { $courseidinfo=' - '.$courseidinfo } $prevassignment=$assignment; - $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$name.'}}'.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$assignment.'}}} \vskip -5 mm '; + $result .='\newpage \noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$name.'}}'.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$assignment.'}}} \vskip 5 mm '; } $result .= $texversion; $flag_latex_header_remove = 'YES'; @@ -1101,6 +1041,7 @@ ENDPART $result .= $texversion; $flag_latex_header_remove = 'YES'; } + if (&Apache::loncommon::connection_aborted($r)) { last; } } &Apache::lonnet::delenv('form.counter'); if ($flag_page_in_sequence eq 'YES') {$result =~ s/\\usepackage{calc}/\\usepackage{calc}\\usepackage{longtable}/;} @@ -1125,6 +1066,7 @@ ENDPART #loop over students my $flag_latex_header_remove = 'NO'; my %moreenv; + $moreenv{'instructor_comments'}='hide'; $moreenv{'textwidth'}=&get_textwidth($helper,$LaTeXwidth); $moreenv{'print_discussions'}=$helper->{'VARS'}->{'PRINT_DISCUSSIONS'}; if ($helper->{'VARS'}->{'PRINT_DISCUSSIONS'} eq 'yes') {$moreenv{'problem_split'}='yes';} @@ -1143,6 +1085,7 @@ ENDPART $student_names[$i].=$person.':'.$fullname.'_END_'; &Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,&mt('last student').' '.$fullname); $flag_latex_header_remove = 'YES'; + if (&Apache::loncommon::connection_aborted($r)) { last; } } &Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); $result .= $print_array[0].' \end{document}'; @@ -1192,6 +1135,7 @@ ENDPART &mt('last assignment').' '.$fullname); $flag_latex_header_remove = 'YES'; $count++; + if (&Apache::loncommon::connection_aborted($r)) { last; } } &Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); $result .= $print_array[0].' \end{document}'; @@ -1413,10 +1357,9 @@ sub print_resources { my $current_counter=$ENV{'form.counter'}; if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { - my %form; - $form{'answer_output_mode'}='tex'; - $form{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'}; - my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$ENV{'request.course.id'},%form); + $moreenv->{'answer_output_mode'}='tex'; + $moreenv->{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'}; + my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$ENV{'request.course.id'},%{$moreenv}); &Apache::lonnet::appenv(('form.counter' => $current_counter)); if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') { $rendered=~s/(\\keephidden{ENDOFPROBLEM})/$ansrendered$1/; @@ -1459,17 +1402,18 @@ sub print_resources { } $remove_latex_header = 'YES'; } + if (&Apache::loncommon::connection_aborted($r)) { last; } } my $courseidinfo = &get_course(); if (defined($courseidinfo)) { $courseidinfo=' - '.$courseidinfo } if ($usersection ne '') {$courseidinfo.=' - Sec. '.$usersection} my $currentassignment=&Apache::lonxml::latex_special_symbols($helper->{VARS}->{'assignment'},'header'); if ($current_output=~/\\documentclass/) { - $current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\lhead{\\textit{\\textbf{$fullname}}$courseidinfo \\hfill \\thepage \\\\ \\textit{$currentassignment}$namepostfix}\\vskip 3 mm /; + $current_output =~ s/\\begin{document}/\\setlength{\\topmargin}{1cm} \\begin{document}\\noindent\\parbox{\\minipagewidth}{\\noindent\\lhead{\\textit{\\textbf{$fullname}}$courseidinfo \\hfill \\thepage \\\\ \\textit{$currentassignment}$namepostfix}}\\vskip 5 mm /; } else { my $blankpages = ''; for (my $j=0;$j<$helper->{'VARS'}->{'EMPTY_PAGES'};$j++) {$blankpages.='\clearpage\strut\clearpage';} - $current_output = '\strut\vspace*{-6 mm}\\newline\\noindent\\makebox[\\textwidth/$number_of_columns][b]{\\hrulefill}\vspace*{-2 mm}\\newline\\noindent{\\tiny Printed from LON-CAPA\\copyright MSU{\\hfill} Licensed under GNU General Public License }\\newpage '.$blankpages.'\setcounter{page}{1}\noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$fullname.'}}'.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$currentassignment.'}'.$namepostfix.'}} \vskip -5 mm '.$current_output; + $current_output = '\strut\vspace*{-6 mm}\\newline\\noindent\\makebox[\\textwidth/$number_of_columns][b]{\\hrulefill}\vspace*{-2 mm}\\newline\\noindent{\\tiny Printed from LON-CAPA\\copyright MSU{\\hfill} Licensed under GNU General Public License }\\newpage '.$blankpages.'\setcounter{page}{1}\noindent\parbox{\minipagewidth}{\noindent\\lhead{\\textit{\\textbf{'.$fullname.'}}'.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$currentassignment.'}'.$namepostfix.'}} \vskip 5 mm '.$current_output; } return ($current_output,$fullname); @@ -1528,11 +1472,6 @@ use Data::Dumper; sub printHelper { my $r = shift; - if ($ENV{'request.course.id'}) { - my $fn=$ENV{'request.course.fn'}; - tie(%hash,'GDBM_File',"$fn.db",&GDBM_READER(),0640); - } - if ($r->header_only) { if ($ENV{'browser.mathml'}) { &Apache::loncommon::content_type($r,'text/xml'); @@ -1594,7 +1533,7 @@ sub printHelper { } - my ($resourceTitle,$sequenceTitle,$mapTitle) = &details_for_menu; + my ($resourceTitle,$sequenceTitle,$mapTitle) = &details_for_menu($helper); if ($sequenceTitle ne '') {$helper->{VARS}->{'assignment'}=$sequenceTitle;} @@ -1708,7 +1647,7 @@ sub printHelper { HELPERFRAGMENT - &Apache::lonxml::xmlparse($r, 'helper', $helperFragment); + &Apache::lonxml::xmlparse($r, 'helper', $helperFragment); } # If the user is priviledged, allow them to print all @@ -2017,9 +1956,7 @@ RNDSEED $r->print($helper->display()); - Apache::lonhelper::unregisterHelperTags(); - - untie %hash; + &Apache::lonhelper::unregisterHelperTags(); return OK; } @@ -2060,10 +1997,10 @@ use strict; use Apache::lonlocal; my $maxColumns = 2; -my @paperSize = ("Letter [8 1/2x11 in]", "Legal [8 1/2x14 in]", - "Ledger/Tabloid [11x17 in]", "Executive [7 1/2x10 in]", - "A2 [420x594 mm]", "A3 [297x420 mm]", "A4 [210x297 mm]", - "A5 [148x210 mm]", "A6 [105x148 mm]" ); +my @paperSize = ("letter [8 1/2x11 in]", "legal [8 1/2x14 in]", + "tabloid (ledger) [11x17 in]", "executive [7 1/2x10 in]", + "a2 [420x594 mm]", "a3 [297x420 mm]", "a4 [210x297 mm]", + "a5 [148x210 mm]", "a6 [105x148 mm]" ); # Tentative format: Orientation (L = Landscape, P = portrait) | Colnum | # Paper type @@ -2123,14 +2060,15 @@ STATEHTML if ($DefaultPaperSize eq '') {$DefaultPaperSize='letter';} $i = 0; foreach (@paperSize) { + $_=~/(\w+)/; + my $papersize=$1; if ($paperSize[$i]=~/$DefaultPaperSize/) { - $result .= "\n"; + $result .= "\n"; } else { - $result .= "\n"; + $result .= "\n"; } $i++; } - $result .= ""; return $result; }