version 1.326, 2004/08/18 18:56:46
|
version 1.332, 2004/09/29 06:06:34
|
Line 229 sub character_chart {
|
Line 229 sub character_chart {
|
$result =~ s/&(\#219|Ucirc);/\\^{U}/g; |
$result =~ s/&(\#219|Ucirc);/\\^{U}/g; |
$result =~ s/&(\#220|Uuml);/\\\"{U}/g; |
$result =~ s/&(\#220|Uuml);/\\\"{U}/g; |
$result =~ s/&(\#221|Yacute);/\\\'{Y}/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/&(\#224|agrave);/\\\`{a}/g; |
$result =~ s/&(\#225|aacute);/\\\'{a}/g; |
$result =~ s/&(\#225|aacute);/\\\'{a}/g; |
$result =~ s/&(\#226|acirc);/\\^{a}/g; |
$result =~ s/&(\#226|acirc);/\\^{a}/g; |
Line 373 sub character_chart {
|
Line 373 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 { |
sub page_format { |
# |
# |
#Supported paper format: "Letter [8 1/2x11 in]", "Legal [8 1/2x14 in]", |
#Supported paper format: "Letter [8 1/2x11 in]", "Legal [8 1/2x14 in]", |
Line 382 sub page_format {
|
Line 476 sub page_format {
|
# "A6 [105x148 mm]" |
# "A6 [105x148 mm]" |
# |
# |
my ($papersize,$layout,$numberofcolumns) = @_; |
my ($papersize,$layout,$numberofcolumns) = @_; |
my ($textwidth,$textheight,$oddoffset,$evenoffset,$topmargin) = (0,0,0,0,0); |
return @{$page_formats{$papersize}->{$layout}->{$numberofcolumns}}; |
my $page_formats={'book'=>{ |
|
'1'=>{'letter'=>{'width'=>'7.1 in','height'=>'10.2 in','topmargin'=>'0 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'legal'=>{'width'=>'7.1 in','height'=>'13 in','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'tabloid'=>{'width'=>'9.8 in','height'=>'16 in','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'exacutive'=>{'width'=>'6.8 in','height'=>'9 in','topmargin'=>'1.2 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'a2'=>{ |
|
|
|
}, |
|
'a3'=>{ |
|
|
|
}, |
|
'a4'=>{'width'=>'176 mm','height'=>'272 mm','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-40 pt in','evensidemargin'=>'-60 pt', |
|
|
|
}, |
|
'a5'=>{ |
|
|
|
}, |
|
'a6'=>{ |
|
|
|
}, |
|
}, |
|
'2'=>{'letter'=>{'width'=>'3.66 in','height'=>'10.2 in','topmargin'=>'0 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'legal'=>{'width'=>'3.16 in','height'=>'13 in','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'tabloid'=>{'width'=>'4.9 in','height'=>'16 in','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
|
|
}, |
|
'exacutive'=>{'width'=>'3.1 in','height'=>'9 in','topmargin'=>'1.2 in', |
|
'oddsidemargin'=>'-0.57 in','evensidemargin'=>'-0.57 in', |
|
}, |
|
'a2'=>{ |
|
|
|
}, |
|
'a3'=>{ |
|
|
|
}, |
|
'a4'=>{'width'=>'91 mm','height'=>'272 mm','topmargin'=>'-0.5 in', |
|
'oddsidemargin'=>'-40 pt in','evensidemargin'=>'-60 pt', |
|
|
|
}, |
|
'a5'=>{ |
|
|
|
}, |
|
'a6'=>{ |
|
|
|
}, |
|
|
|
}, |
|
},'album'=>{ |
|
'1'=>{'letter'=>{'width'=>'8.8 in','height'=>'6.8 in','topmargin'=>'0 in', |
|
'oddsidemargin'=>'-40 pt in','evensidemargin'=>'-60 pt', |
|
}, |
|
'legal'=>{ |
|
|
|
}, |
|
'tabloid'=>{ |
|
|
|
}, |
|
'exacutive'=>{ |
|
|
|
}, |
|
'a2'=>{ |
|
|
|
}, |
|
'a3'=>{ |
|
|
|
}, |
|
'a4'=>{'width'=>'8.5 in','height'=>'7.7 in','topmargin'=>'0 in', |
|
'oddsidemargin'=>'-40 pt in','evensidemargin'=>'-60 pt', |
|
|
|
}, |
|
'a5'=>{ |
|
|
|
}, |
|
'a6'=>{ |
|
|
|
}, |
|
}, |
|
'2'=>{'letter'=>{'width'=>'4.4 in','height'=>'6.8 in','topmargin'=>'3.5 in', |
|
'oddsidemargin'=>'-0.5 in','evensidemargin'=>'-1.5 in', |
|
}, |
|
'legal'=>{ |
|
|
|
}, |
|
'tabloid'=>{ |
|
|
|
}, |
|
'exacutive'=>{ |
|
|
|
}, |
|
'a2'=>{ |
|
|
|
}, |
|
'a3'=>{ |
|
|
|
}, |
|
'a4'=>{'width'=>'3.9 in','height'=>'7.7 in','topmargin'=>'0 in', |
|
'oddsidemargin'=>'-40 pt in','evensidemargin'=>'-60 pt', |
|
|
|
}, |
|
'a5'=>{ |
|
|
|
}, |
|
'a6'=>{ |
|
|
|
}, |
|
|
|
}, |
|
}, |
|
}; |
|
return $page_formats->{$layout}->{$numberofcolumns}->{$papersize}->{'width'}, |
|
$page_formats->{$layout}->{$numberofcolumns}->{$papersize}->{'height'}, |
|
$page_formats->{$layout}->{$numberofcolumns}->{$papersize}->{'oddmargin'}, |
|
$page_formats->{$layout}->{$numberofcolumns}->{$papersize}->{'evensidemargin'}, |
|
$page_formats->{$layout}->{$numberofcolumns}->{$papersize}->{'topmargin'}; |
|
} |
} |
|
|
|
|
Line 699 sub print_latex_header {
|
Line 665 sub print_latex_header {
|
} |
} |
|
|
sub path_to_problem { |
sub path_to_problem { |
my ($urlp,$LaTeXwidth)=@_; |
my ($urlp,$colwidth)=@_; |
my $newurlp = ''; |
my $newurlp = ''; |
$LaTeXwidth=~s/\s*mm\s*$//; |
$colwidth=~s/\s*mm\s*$//; |
my $HowMany = length($urlp)*2; |
#characters average about 2 mm in width |
if ($HowMany > $LaTeXwidth) { |
if (length($urlp)*2 > $LaTeXwidth) { |
my @temporrary = split '/',$urlp; |
my @elements = split '/',$urlp; |
my $HowManyNew = 0; |
my $curlength=0; |
for (my $ii=0;$ii<=$#temporrary;$ii++) { |
foreach my $element (@elements) { |
if ($temporrary[$ii] ne '') { |
if ($curlength+(length($element)*2) > $colwidth) { |
$HowManyNew += length($temporrary[$ii])*2; |
$newurlp .= '|\vskip -1 mm \noindent \verb|'; |
if ($HowManyNew < $LaTeXwidth ) { |
$curlength=0; |
$newurlp .= '/'.$temporrary[$ii]; |
} else { |
} else { |
$curlength+=length($element)*2; |
$HowManyNew = 0; |
|
$newurlp .= '|\vskip -1 mm \noindent \verb|'; |
|
$ii--; |
|
} |
|
} |
} |
|
$newurlp.='/'.$element; |
} |
} |
} else { |
} else { |
$newurlp=$urlp; |
$newurlp=$urlp; |
Line 1080 ENDPART
|
Line 1043 ENDPART
|
$result .= $texversion; |
$result .= $texversion; |
$flag_latex_header_remove = 'YES'; |
$flag_latex_header_remove = 'YES'; |
} |
} |
|
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
&Apache::lonnet::delenv('form.counter'); |
&Apache::lonnet::delenv('form.counter'); |
if ($flag_page_in_sequence eq 'YES') {$result =~ s/\\usepackage{calc}/\\usepackage{calc}\\usepackage{longtable}/;} |
if ($flag_page_in_sequence eq 'YES') {$result =~ s/\\usepackage{calc}/\\usepackage{calc}\\usepackage{longtable}/;} |
Line 1104 ENDPART
|
Line 1068 ENDPART
|
#loop over students |
#loop over students |
my $flag_latex_header_remove = 'NO'; |
my $flag_latex_header_remove = 'NO'; |
my %moreenv; |
my %moreenv; |
|
$moreenv{'instructor_comments'}='hide'; |
$moreenv{'textwidth'}=&get_textwidth($helper,$LaTeXwidth); |
$moreenv{'textwidth'}=&get_textwidth($helper,$LaTeXwidth); |
$moreenv{'print_discussions'}=$helper->{'VARS'}->{'PRINT_DISCUSSIONS'}; |
$moreenv{'print_discussions'}=$helper->{'VARS'}->{'PRINT_DISCUSSIONS'}; |
if ($helper->{'VARS'}->{'PRINT_DISCUSSIONS'} eq 'yes') {$moreenv{'problem_split'}='yes';} |
if ($helper->{'VARS'}->{'PRINT_DISCUSSIONS'} eq 'yes') {$moreenv{'problem_split'}='yes';} |
Line 1122 ENDPART
|
Line 1087 ENDPART
|
$student_names[$i].=$person.':'.$fullname.'_END_'; |
$student_names[$i].=$person.':'.$fullname.'_END_'; |
&Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,&mt('last student').' '.$fullname); |
&Apache::lonhtmlcommon::Increment_PrgWin($r,\%prog_state,&mt('last student').' '.$fullname); |
$flag_latex_header_remove = 'YES'; |
$flag_latex_header_remove = 'YES'; |
|
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); |
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); |
$result .= $print_array[0].' \end{document}'; |
$result .= $print_array[0].' \end{document}'; |
Line 1171 ENDPART
|
Line 1137 ENDPART
|
&mt('last assignment').' '.$fullname); |
&mt('last assignment').' '.$fullname); |
$flag_latex_header_remove = 'YES'; |
$flag_latex_header_remove = 'YES'; |
$count++; |
$count++; |
|
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); |
&Apache::lonhtmlcommon::Close_PrgWin($r,\%prog_state); |
$result .= $print_array[0].' \end{document}'; |
$result .= $print_array[0].' \end{document}'; |
Line 1320 ENDPART
|
Line 1287 ENDPART
|
} |
} |
} |
} |
|
|
&Apache::lonnet::logthis("SSSSSSS: $filename,$laystyle,$papersize,$numberofcolumns,$selectionmade,$helper->{'VARS'}->{'TABLE_CONTENTS'},$helper->{'VARS'}->{'TABLE_INDEX'},$ENV{'request.role.adv'},$#print_array,$student_names,$URLback"); |
|
|
|
|
|
&Apache::lonnet::appenv('cgi.'.$identifier.'.file' => $filename, |
&Apache::lonnet::appenv('cgi.'.$identifier.'.file' => $filename, |
'cgi.'.$identifier.'.layout' => $laystyle, |
'cgi.'.$identifier.'.layout' => $laystyle, |
'cgi.'.$identifier.'.numcol' => $numberofcolumns, |
'cgi.'.$identifier.'.numcol' => $numberofcolumns, |
Line 1395 sub print_resources {
|
Line 1359 sub print_resources {
|
my $current_counter=$ENV{'form.counter'}; |
my $current_counter=$ENV{'form.counter'}; |
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
if(($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') || |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'only')) { |
my %form; |
$moreenv->{'answer_output_mode'}='tex'; |
$form{'answer_output_mode'}='tex'; |
$moreenv->{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'}; |
$form{'latex_type'}=$helper->{'VARS'}->{'LATEX_TYPE'}; |
my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$ENV{'request.course.id'},%{$moreenv}); |
my $ansrendered = &Apache::loncommon::get_student_answers($curresline,$username,$userdomain,$ENV{'request.course.id'},%form); |
|
&Apache::lonnet::appenv(('form.counter' => $current_counter)); |
&Apache::lonnet::appenv(('form.counter' => $current_counter)); |
if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') { |
if ($helper->{'VARS'}->{'ANSWER_TYPE'} eq 'no') { |
$rendered=~s/(\\keephidden{ENDOFPROBLEM})/$ansrendered$1/; |
$rendered=~s/(\\keephidden{ENDOFPROBLEM})/$ansrendered$1/; |
Line 1441 sub print_resources {
|
Line 1404 sub print_resources {
|
} |
} |
$remove_latex_header = 'YES'; |
$remove_latex_header = 'YES'; |
} |
} |
|
if (&Apache::loncommon::connection_aborted($r)) { last; } |
} |
} |
my $courseidinfo = &get_course(); |
my $courseidinfo = &get_course(); |
if (defined($courseidinfo)) { $courseidinfo=' - '.$courseidinfo } |
if (defined($courseidinfo)) { $courseidinfo=' - '.$courseidinfo } |
Line 2043 use Apache::lonlocal;
|
Line 2007 use Apache::lonlocal;
|
|
|
my $maxColumns = 2; |
my $maxColumns = 2; |
my @paperSize = ("letter [8 1/2x11 in]", "legal [8 1/2x14 in]", |
my @paperSize = ("letter [8 1/2x11 in]", "legal [8 1/2x14 in]", |
"tabloid (ladger) [11x17 in]", "executive [7 1/2x10 in]", |
"tabloid (ledger) [11x17 in]", "executive [7 1/2x10 in]", |
"a2 [420x594 mm]", "a3 [297x420 mm]", "a4 [210x297 mm]", |
"a2 [420x594 mm]", "a3 [297x420 mm]", "a4 [210x297 mm]", |
"a5 [148x210 mm]", "a6 [105x148 mm]" ); |
"a5 [148x210 mm]", "a6 [105x148 mm]" ); |
|
|