--- loncom/homework/randomlabel.pm 2005/04/12 09:56:07 1.69 +++ loncom/homework/randomlabel.pm 2005/04/12 11:03:08 1.70 @@ -1,7 +1,7 @@ # The LearningOnline Network with CAPA # random labelling tool # -# $Id: randomlabel.pm,v 1.69 2005/04/12 09:56:07 foxr Exp $ +# $Id: randomlabel.pm,v 1.70 2005/04/12 11:03:08 foxr Exp $ # # Copyright Michigan State University Board of Trustees # @@ -302,10 +302,12 @@ sub end_labelgroup { my $tcY=$height_param-$y*($height_param/$wheight); $tcX=sprintf('%.2f',$tcX); $tcY=sprintf('%.2f',$tcY); - $result.='\put('.$tcX.','.$tcY.'){'.$TeXsize.' \bf '.$label.'}'."\n"; + $result .= '\put('.$tcX.','.$tcY.'){'; if( $type eq 'text') { + $result.= $TeXsize.' \bf '.$label."}\n"; &add_vars($gname,$i,$label,$idx_arr[$i],$value,'',$safeeval); } elsif ( $type eq 'image') { + $result .= '\includegraphics{'.$label."}}\n"; &add_vars($gname,$i, $Apache::randomlabel::description[$idx_arr[$i]], $idx_arr[$i],$value,$label,$safeeval); @@ -403,13 +405,17 @@ sub end_label { my $type = &Apache::lonxml::get_param('type',$parstack,$safeeval,-2); my $ltext=&Apache::lonxml::endredirection; 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; + # For tex targets, our image url has been potentially corrupted + # by prepending \'s in front of special latex symbols. + # For now we only worry about the _ case (most common?) + # There's a whole host of theim in lonxml::latex_special_symbols + # that could potentially have to be re-done. + + $ltext =~ s/\\_/_/g; } + &Apache::lonxml::debug("Turning $ltext, $Apache::lonxml::pwd[-1]"); + $ltext=&Apache::imageresponse::clean_up_image($ltext); # $ltext=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1], # $ltext); &Apache::lonxml::debug("into $ltext");