Diff for /loncom/xml/londefdef.pm between versions 1.69 and 1.71

version 1.69, 2002/07/11 14:40:14 version 1.71, 2002/07/11 19:32:06
Line 48  use Apache::lonnet; Line 48  use Apache::lonnet;
 use strict;  use strict;
 use Apache::lonxml;  use Apache::lonxml;
 use Apache::File();  use Apache::File();
   use Image::Magick;
   
 BEGIN {  BEGIN {
   
Line 1310  EDITBUTTON Line 1311  EDITBUTTON
     chop $output;      chop $output;
     $output .= ' \\\\ ';      $output .= ' \\\\ ';
  }   }
  $Apache::londefdef::table[-1]{'output'} .= $header_of_table.$output.$Apache::londefdef::table[-1]{'hinc'}.'\end{tabular}';                  my @length = split(/,/,$Apache::londefdef::table[-1]{'length'});
                   my $how_many_columns = $#length+1;
                   my $parboxlength = '(\textwidth';
                   for (my $io=0; $io<=$#length;$io++) {
       if ($length[$io] ne '') {
    $parboxlength .= ' - '.$length[$io].' ';
       }
    }
    $parboxlength .= ')/'.$how_many_columns.' - 7 mm';
    $output =~ s/\\parbox{}/\\parbox{$parboxlength}/g;
    $Apache::londefdef::table[-1]{'output'} .= $header_of_table.$output.$Apache::londefdef::table[-1]{'hinc'}.'\end{tabular}\vskip 0 mm ';
  if ($#Apache::londefdef::table > 0) {   if ($#Apache::londefdef::table > 0) {
     $inmemory = $Apache::londefdef::table[-1]{'output'};      $inmemory = $Apache::londefdef::table[-1]{'output'};
     pop @Apache::londefdef::table;      pop @Apache::londefdef::table;
Line 1339  EDITBUTTON Line 1350  EDITBUTTON
  }   }
  push ( @{ $Apache::londefdef::table[-1]{'rowdata'} }, $Apache::londefdef::table[-1]{'hinc'});   push ( @{ $Apache::londefdef::table[-1]{'rowdata'} }, $Apache::londefdef::table[-1]{'hinc'});
  $Apache::londefdef::table[-1]{'counter_columns'} = -1;   $Apache::londefdef::table[-1]{'counter_columns'} = -1;
    $Apache::londefdef::table[-1]{'length'} = ''; #just added
   
     }       } 
    return $currentstring;     return $currentstring;
Line 1379  EDITBUTTON Line 1391  EDITBUTTON
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  my $current_row = $Apache::londefdef::table[-1]{'row_number'};   my $current_row = $Apache::londefdef::table[-1]{'row_number'};
  my $data=&Apache::lonxml::endredirection();   my $data=&Apache::lonxml::endredirection();
  @{ $Apache::londefdef::table[-1]{'rowdata'} }[$current_row] .= $data.' '.$Apache::londefdef::table[-1]{'vinc'};   if ($data=~m/width\s*=\s*(\d+\.*\d*\s*(mm|cm))/) {                 #just added
                       $Apache::londefdef::table[-1]{'length'} .= $1.',';             #just added
    }                                                                  #just added
    @{ $Apache::londefdef::table[-1]{'rowdata'} }[$current_row] .= '\parbox{'.$1.'}{'.$data.'} '.$Apache::londefdef::table[-1]{'vinc'};
     }      }
    return $currentstring;     return $currentstring;
  }   }
Line 1428  EDITBUTTON Line 1443  EDITBUTTON
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
       my $src = &Apache::lonxml::get_param('src',$parstack,$safeeval);        my $src = &Apache::lonxml::get_param('src',$parstack,$safeeval);
       $src=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$src);        $src=&Apache::lonnet::filelocation($Apache::lonxml::pwd[-1],$src);
               if ($src=~m/\.(gif|GIF)$/) {                my $image = Image::Magick->new;
   my $gif_file = Apache::File->new($src);                my $current_figure = $image->Read($src);
   binmode ($gif_file);                $width_param = $image->Get('width') * $scaling;;
                   my ($buff,$imagesize);        $height_param = $image->Get('height') * $scaling;;
   read ($gif_file,$buff,6);        undef $image;
                   read ($gif_file,$imagesize,4);  
                   my ($xlsb,$xmsb,$ylsb,$ymsb) = split(//,$imagesize);  
                   my $image_width=ord($xlsb)+ord($xmsb)*256;  
                   my $image_height=ord($ylsb)+ord($ymsb)*256;  
   $width_param = $image_width * $scaling; #default value of the picture's width  
   $height_param = $image_height * $scaling; #default value of the picture's height  
        }  
       my $epssrc = $src;        my $epssrc = $src;
       $epssrc =~ s/(\.gif|\.jpg)$/\.eps/i;        $epssrc =~ s/(\.gif|\.jpg)$/\.eps/i;
       if (not -e $epssrc) {        if (not -e $epssrc) {

Removed from v.1.69  
changed lines
  Added in v.1.71


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>