--- loncom/homework/randomlabel.pm 2005/03/02 22:26:36 1.65 +++ loncom/homework/randomlabel.pm 2005/04/12 09:56:07 1.69 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # random labelling tool # -# $Id: randomlabel.pm,v 1.65 2005/03/02 22:26:36 raeburn Exp $ +# $Id: randomlabel.pm,v 1.69 2005/04/12 09:56:07 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -25,9 +25,6 @@ # # http://www.lon-capa.org/ # -# 7/20/2001 Isaac Tsai, initial syntax -# 8/10/2001 Isaac Tsai, -# 8/30/2001 Isaac Tsai, # SYNTAX: # # @@ -91,7 +88,7 @@ sub start_randomlabel { my $bgimg= &Apache::lonxml::get_param('bgimg',$parstack,$safeeval); if ( defined($bgimg) && $bgimg !~ /^http:/ ) { $bgimg=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$bgimg); - if (&Apache::lonnet::repcopy($bgimg) ne 'OK') { + if (&Apache::lonnet::repcopy($bgimg) ne 'ok') { $bgimg='/home/httpd/html/adm/lonKaputt/lonlogo_broken.gif'; } } @@ -176,11 +173,12 @@ sub make_eps_image { &Apache::londefdef::image_size($bgimg,0.3,$parstack,$safeeval, $depth,1); my $dirtywidth=$width_param+5; - my $result.='\vspace*{2mm}\noindent \parbox{'.$dirtywidth. + my $result ="\n".'\vspace*{2mm}\noindent'."\n". + '\parbox{'.$dirtywidth. ' mm}{ \noindent \epsfxsize='.$width_param. ' mm \epsffile{'.$path.$file. - '}\setlength{\unitlength}{1mm} \begin{picture}('. - $width_param.','.$height_param.')(0,-'.$height_param.')'; + '}\setlength{\unitlength}{1mm}'."\n".' \begin{picture}('. + $width_param.','.$height_param.')(0,-'.$height_param.')'."\n"; return $result; } @@ -201,7 +199,7 @@ sub start_labelgroup { @Apache::randomlabel::ycoord = (); @Apache::randomlabel::value = (); @Apache::randomlabel::label_arr = (); - @Apache::randomlabel::decription = (); + @Apache::randomlabel::description = (); } elsif ($target eq 'edit') { $result.=&Apache::edit::tag_start($target,$token); $result.=&Apache::edit::text_arg('Name:','name',$token). @@ -407,6 +405,11 @@ sub end_label { if ($type eq 'image') { &Apache::lonxml::debug("Turning $ltext, $Apache::lonxml::pwd[-1]"); $ltext=&Apache::imageresponse::clean_up_image($ltext); + # In .tex output mode, at least _ has to be replaced with + # \_ + if ($target eq 'tex') { + $ltext =~ s/\_/\\\_/g; + } # $ltext=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1], # $ltext); &Apache::lonxml::debug("into $ltext");