--- loncom/interface/lonprintout.pm 2006/05/30 12:46:09 1.439 +++ loncom/interface/lonprintout.pm 2006/06/06 11:02:38 1.440 @@ -1,7 +1,7 @@ # The LearningOnline Network # Printout # -# $Id: lonprintout.pm,v 1.439 2006/05/30 12:46:09 www Exp $ +# $Id: lonprintout.pm,v 1.440 2006/06/06 11:02:38 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -1812,6 +1812,18 @@ sub print_resources { my %page_breaks = &get_page_breaks($helper); my @format_array = split(/\|/,$helper->{'VARS'}->{'FORMAT'}); my $columns_in_format = $format_array[1]; + # + # Bracket each student with a + # Special that allows the post processor to even out the page + # counts later. Nasty problem this... it would be really + # nice to put the special in as a postscript comment + # e.g. \special{ps:\%STARTOFSTUDENTSTAMP} unfortunately, + # The special gets passed the \ and dvips puts it in the output file + # so we'll just put STARTOFSTUDENTSTAMP in the postscript and rely + # on printout.pl to strip it...simlarly with ENDOFSTUDENTSTAMP. + # These will go on a line by themselves. + # + $current_output .= "\\special{ps:\nSTARTOFSTUDENTSTAMP\n}"; foreach my $curresline (@{$master_seq}) { if (defined $page_breaks{$curresline}) { @@ -1907,6 +1919,10 @@ sub print_resources { $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\\fancyhead[LO]{\\textit{\\textbf{'.$fullname.'}}'.$courseidinfo.' \\hfill \\thepage \\\\ \\textit{'.$currentassignment.'}'.$namepostfix.'}} \vskip 5 mm '.$current_output; } } + # + # Close the student bracketing. + # + $current_output .= "\\special{ps:\nENDOFSTUDENTSTAMP\n}"; return ($current_output,$fullname, $printed); }