version 1.185, 2003/10/21 19:40:32
|
version 1.187, 2003/10/24 21:25:50
|
Line 50 use Apache::File();
|
Line 50 use Apache::File();
|
use Image::Magick; |
use Image::Magick; |
use Apache::lonmenu(); |
use Apache::lonmenu(); |
use Apache::lonmeta(); |
use Apache::lonmeta(); |
|
use Apache::Constants qw(:common); |
|
|
$Apache::londefdef::TD_redirection=0; |
$Apache::londefdef::TD_redirection=0; |
|
|
Line 159 sub start_html {
|
Line 160 sub start_html {
|
&tth::tthoptions('-L -u0'); |
&tth::tthoptions('-L -u0'); |
} |
} |
} |
} |
if ($target eq 'web') { |
if ($target eq 'web' || $target eq 'edit') { |
$currentstring = &Apache::lonxml::xmlbegin(). |
$currentstring = &Apache::lonxml::xmlbegin(). |
&Apache::lonxml::fontsettings(); |
&Apache::lonxml::fontsettings(); |
} elsif ($target eq 'tex') { |
} elsif ($target eq 'tex') { |
Line 2178 sub start_img {
|
Line 2179 sub start_img {
|
#<allow> tag will care about replication |
#<allow> tag will care about replication |
} |
} |
} |
} |
|
} elsif ($target eq 'edit') { |
|
$currentstring .=&Apache::edit::tag_start($target,$token); |
|
$currentstring .=&Apache::edit::text_arg('Image Url:','src',$token,70). |
|
&Apache::edit::browse('src',undef,'alt').' '. |
|
&Apache::edit::search('src',undef,'alt').'<br />'; |
|
$currentstring .=&Apache::edit::text_arg('Description:','alt',$token,70).'<br />'; |
|
$currentstring .=&Apache::edit::text_arg('width (pixel):','width',$token,5); |
|
$currentstring .=&Apache::edit::text_arg('height (pixel):','height',$token,5).'<br />'; |
|
$currentstring .=&Apache::edit::text_arg('TeXwidth (mm):','TeXwidth',$token,5); |
|
$currentstring .=&Apache::edit::text_arg('TeXheight (mm):','TeXheight',$token,5); |
|
$currentstring .=&Apache::edit::end_row().&Apache::edit::start_spanning_row(); |
|
my $src=&Apache::lonxml::get_param('src',$parstack,$safeeval); |
|
my $alt=&Apache::lonxml::get_param('alt',$parstack,$safeeval); |
|
my $width=&Apache::lonxml::get_param('width',$parstack,$safeeval); |
|
my $height=&Apache::lonxml::get_param('height',$parstack,$safeeval); |
|
$currentstring .= '<img src="'.$src.'" alt="'.$alt.'" '; |
|
if ($width) { $currentstring.=' width="'.$width.'" '; } |
|
if ($height) { $currentstring.=' height="'.$height.'" '; } |
|
$currentstring .= ' />'; |
|
} elsif ($target eq 'modified') { |
|
my $constructtag=&Apache::edit::get_new_args($token,$parstack, |
|
$safeeval,'src','alt', |
|
'TeXwidth','TeXheight', |
|
'width','height'); |
|
if (!$token->[2]{'width'} && !$token->[2]{'height'}) { |
|
$src=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$src); |
|
&image_replication($src); |
|
if (-e $src) { |
|
my $image = Image::Magick->new; |
|
my ($width, $height, $size, $format) = $image->Ping($src); |
|
if ($width && $height) { |
|
$token->[2]{'width'} =$width; |
|
$token->[2]{'height'}=$height; |
|
$constructtag=1; |
|
} |
|
} |
|
} |
|
if ($constructtag) {$currentstring=&Apache::edit::rebuild_tag($token);} |
} |
} |
return $currentstring; |
return $currentstring; |
} |
} |
Line 3294 sub end_hideweboutput {
|
Line 3333 sub end_hideweboutput {
|
|
|
sub image_replication { |
sub image_replication { |
my $src = shift; |
my $src = shift; |
if (not -e $src) { |
if (not -e $src) { &Apache::lonnet::repcopy($src); } |
#replicates image itself |
#replicates eps or ps |
&Apache::lonnet::repcopy($src); |
my $epssrc = my $pssrc = $src; |
#replicates eps or ps |
$epssrc =~ s/\.(gif|jpg|jpeg|png)$/.eps/i; |
my $newsrc = $src; |
$pssrc =~ s/\.(gif|jpg|jpeg|png)$/.ps/i; |
$newsrc =~ s/\.(gif|jpg|jpeg|png)$/.eps/i; |
if (not -e $epssrc && not -e $pssrc) { |
if (not -e $newsrc) { |
my $result=&Apache::lonnet::repcopy($epssrc); |
if (&Apache::lonnet::repcopy($newsrc) ne 'OK') { |
if ($result ne OK) { &Apache::lonnet::repcopy($pssrc); } |
$newsrc =~ s/\.eps$/\.ps/; |
|
&Apache::lonnet::repcopy($newsrc); |
|
} |
|
} |
|
} |
} |
return ''; |
return ''; |
} |
} |