--- loncom/homework/randomlabel.pm 2006/05/30 12:45:37 1.82 +++ loncom/homework/randomlabel.pm 2007/05/10 10:46:51 1.87 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # random labelling tool # -# $Id: randomlabel.pm,v 1.82 2006/05/30 12:45:37 www Exp $ +# $Id: randomlabel.pm,v 1.87 2007/05/10 10:46:51 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -70,7 +70,7 @@ my $cgi_id; my $scale_factor; # image scale factor. my $label_xscale; # Label scale factor (needed for gnuplot). my $label_yscale; - +my $dirty_width_adjust = 5; # Width adjustment for e.g. gnuplot images. BEGIN { &Apache::lonxml::register('Apache::randomlabel',('randomlabel','labelgroup','location','label','bgimg')); @@ -268,12 +268,17 @@ sub end_bgimg { &Apache::lonxml::debug("height $height_param"); &Apache::lonxml::debug("Width $width_param"); &Apache::lonxml::debug("Scale factors: $label_xscale $label_yscale"); - my $dirty_width = $width_param + 5; + my $dirty_width = $width_param + $dirty_width_adjust; + my $x_offset = -$dirty_width_adjust/2.0; + # + # Somewhere here it looks like height_param and + # width_param got backwards... + # $result .= '\parbox{'.$dirty_width.'mm}{'; $result .= " $src \n"; $result .= '\setlength{\unitlength}{1mm}'."\n"; - $result .= '\begin{picture}('."$height_param,$width_param)"; - $result .= "(0,-$height_param)"; + $result .= '\begin{picture}('."$width_param,$height_param)"; + $result .= "($x_offset,-$height_param)"; $result .= "\n"; $Apache::lonxml::debug = 0; @@ -296,6 +301,7 @@ sub make_eps_image { &Apache::lonxml::debug("Image size: $height_param x $width_param"); my $dirtywidth=$width_param+5; + my $result ="\n".'\vspace*{2mm}\noindent'."\n". '\parbox{'.$dirtywidth. ' mm}{ \noindent \epsfxsize='.$width_param. @@ -482,6 +488,10 @@ sub end_labelgroup { } elsif ( $type eq 'image') { my ($path,$file) = &Apache::londefdef::get_eps_image($label); my $image_name = $path.$file; + # + # Note that spaces in e.. \includegraphics cause problems for Latex + # so they get replaced by _'s by lonprintout/printout and us: + # my $label_width = &get_label_width($label); $result .= '\includegraphics[width='.$label_width.'mm]{'