version 1.66, 2005/04/19 09:20:55
|
version 1.72, 2005/06/22 12:03:23
|
Line 343 sub insert_foil {
|
Line 343 sub insert_foil {
|
$Apache::imageresponse::curname=''; |
$Apache::imageresponse::curname=''; |
sub start_foil { |
sub start_foil { |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
my ($target,$token,$tagstack,$parstack,$parser,$safeeval,$style)=@_; |
|
my $result; |
if ($target eq 'web' || $target eq 'grade' || $target eq 'tex' || |
if ($target eq 'web' || $target eq 'grade' || $target eq 'tex' || |
$target eq 'analyze') { |
$target eq 'analyze') { |
my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval); |
my $name = &Apache::lonxml::get_param('name',$parstack,$safeeval); |
if (!$name) { |
if ($name eq "") { |
&Apache::lonxml::error("Foils without names exist. This can cause problems to malfunction."); |
&Apache::lonxml::warning("Foils without names exist. This can cause problems to malfunction."); |
$name=$Apache::lonxml::curdepth; |
$name=$Apache::lonxml::curdepth; |
} |
} |
if (defined($Apache::response::foilnames{$name})) { |
if (defined($Apache::response::foilnames{$name})) { |
Line 362 sub start_foil {
|
Line 363 sub start_foil {
|
push(@{ $Apache::response::foilgroup{'names'} }, $name); |
push(@{ $Apache::response::foilgroup{'names'} }, $name); |
} |
} |
$Apache::imageresponse::curname=$name; |
$Apache::imageresponse::curname=$name; |
} |
} elsif ($target eq 'edit') { |
return ''; |
$result = &Apache::edit::tag_start($target,$token); |
|
$result .= &Apache::edit::text_arg('Name:','name',$token); |
|
$result .= &Apache::edit::end_row(). |
|
&Apache::edit::start_spanning_row(); |
|
} elsif ($target eq 'modified') { |
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
|
$safeeval,'name'); |
|
if ($constructtag) { $result = &Apache::edit::rebuild_tag($token); } |
|
} |
|
return $result;; |
} |
} |
|
|
sub end_foil { |
sub end_foil { |
Line 457 sub end_image {
|
Line 467 sub end_image {
|
$result=&Apache::edit::end_table(); |
$result=&Apache::edit::end_table(); |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
my $src = &Apache::lonxml::endredirection(); |
my $src = &Apache::lonxml::endredirection(); |
my ($path,$file) = &Apache::londefdef::get_eps_image($src); |
|
my ($height_param,$width_param)= |
# There may be all sorts of whitespace on fore and aft: |
&Apache::londefdef::image_size($src,0.3,$parstack,$safeeval); |
|
$Apache::response::foilgroup{"$name.image"} ='\vskip 0 mm \noindent\graphicspath{{'.$path.'}}\includegraphics[width='.$width_param.' mm]{'.$file.'} '; |
$src =~ s/\s+$//s; |
|
$src =~ s/^\s+//s; |
|
|
|
# |
|
# Gnuplot e.g. just generates the latex to put inplace. |
|
# |
|
my $graphinclude; |
|
if ($src =~ /^%DYNAMICIMAGE/) { |
|
# This is needed because the newline is not always passed -> tex. |
|
# At present we don't care about the sizing info. |
|
|
|
my ($commentline, $restofstuff) = split(/\n/, $src); |
|
$graphinclude = $src; |
|
$graphinclude =~ s/^$commentline//; |
|
} else { |
|
my ($path,$file) = &Apache::londefdef::get_eps_image($src); |
|
my ($height_param,$width_param)= |
|
&Apache::londefdef::image_size($src,0.3,$parstack,$safeeval); |
|
$graphinclude = '\graphicspath{{'.$path.'}}\includegraphics[width='.$width_param.' mm]{'.$file.'}'; |
|
} |
|
$Apache::response::foilgroup{"$name.image"} ='\vskip 0 mm \noindent '.$graphinclude; |
} |
} |
return $result; |
return $result; |
} |
} |