Diff for /loncom/xml/londefdef.pm between versions 1.79 and 1.82

version 1.79, 2002/07/30 14:10:51 version 1.82, 2002/08/01 19:47:29
Line 1039  EDITBUTTON Line 1039  EDITBUTTON
             if ($target eq 'web') {              if ($target eq 'web') {
        $currentstring .= $token->[4];         $currentstring .= $token->[4];
     } elsif ($target eq 'tex') {      } elsif ($target eq 'tex') {
  $currentstring .= '\vskip 0 mm \noindent\makebox[\textwidth - 8 mm][b]{\hrulefill}';   $currentstring .= '\vskip 0 mm \noindent\makebox[\textwidth ][b]{\hrulefill}\vskip 0 mm ';
     }       } 
            return $currentstring;             return $currentstring;
  }   }
Line 1325  EDITBUTTON Line 1325  EDITBUTTON
  my $filled_columns = 0;   my $filled_columns = 0;
  foreach my $tempo_length (@{ $Apache::londefdef::table[-1]{'lengthrow'} }) {   foreach my $tempo_length (@{ $Apache::londefdef::table[-1]{'lengthrow'} }) {
     my @length = split(/,/,$tempo_length);      my @length = split(/,/,$tempo_length);
       my $nfilled_columns = 0; 
     for (my $ico=0;$ico<$how_many_columns;$ico++) {      for (my $ico=0;$ico<$how_many_columns;$ico++) {
  if (not $lengthforoutput[$ico]=~m/\s*0\s*/) {$filled_columns++;}   if (not $lengthforoutput[$ico]=~m/\s*0\s*/) {$nfilled_columns++;}
     }      }
       if ($nfilled_columns > $filled_columns) {$filled_columns=$nfilled_columns;}
  }   }
  my $temp_file;   my $temp_file;
  my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout.tbl";   my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout.tbl";
Line 1381  EDITBUTTON Line 1383  EDITBUTTON
                 for (my $io=0; $io<=$#lengthforoutput;$io++) {                  for (my $io=0; $io<=$#lengthforoutput;$io++) {
     $parboxlength .= ' - '.$lengthforoutput[$io].' ';      $parboxlength .= ' - '.$lengthforoutput[$io].' ';
  }   }
  $parboxlength .= ')/($GLOBALnumberOFcolumns+1) - 1 mm';   $parboxlength .= ')/($GLOBALnumberOFcolumns+1) - 3 mm';
  $output =~ s/\\parbox{}{}/\\parbox{1 mm}{}/g;   $output =~ s/\\parbox{}{}/\\parbox{1 mm}{}/g;
  $output =~ s/\\parbox{}{(\\textbf{\w?\.?})}/\\parbox{5 mm}{$1}/g; #for stupid tables with empty columns   $output =~ s/\\parbox{}{(\\textbf{\w?\.?})}/\\parbox{5 mm}{$1}/g; #for stupid tables with empty columns
  $output =~ s/\\parbox{}/\\parbox{$parboxlength}/g;   $output =~ s/\\parbox{}/\\parbox{$parboxlength}/g;
Line 1405  EDITBUTTON Line 1407  EDITBUTTON
     $currentstring = $Apache::londefdef::table[-1]{'output'};      $currentstring = $Apache::londefdef::table[-1]{'output'};
     $currentstring =~ s/\\\\\s+\\\\/\\\\/g;       $currentstring =~ s/\\\\\s+\\\\/\\\\/g; 
     pop @Apache::londefdef::table;      pop @Apache::londefdef::table;
       if (-e $filename) {
    unlink $filename;
       }
  }   }
     }      }
    return $currentstring;     return $currentstring;
Line 1462  EDITBUTTON Line 1467  EDITBUTTON
         sub end_td {          sub end_td {
     my ($target,$token) = @_;      my ($target,$token) = @_;
             my $currentstring = '';              my $currentstring = '';
               my $tempolen = '';
             if ($target eq 'web') {              if ($target eq 'web') {
  $currentstring = $token->[2];        $currentstring = $token->[2];     
     } 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();
  if ($data=~m/width\s*=\s*(\d+\.*\d*\s*(mm|cm))/) {                    if ($data=~m/width\s*=\s*(\d+\.*\d*\s*(mm|cm|in|pc|pt))/) {                 
                     $Apache::londefdef::table[-1]{'length'} .= $1.',';                              $Apache::londefdef::table[-1]{'length'} .= $1.',';
       $tempolen = $1;         
  } else {   } else {
     $Apache::londefdef::table[-1]{'length'} .= '0 mm,';       if (length($data)<5) {
    $Apache::londefdef::table[-1]{'length'} .= '7 mm,';
    $tempolen = '5 mm';
       } else {
    $Apache::londefdef::table[-1]{'length'} .= '0 mm,';
    $tempolen = '';
       }
                 }                                                          }                                        
  @{ $Apache::londefdef::table[-1]{'rowdata'} }[$current_row] .= '\parbox{'.$1.'}{'.$data.'} '.$Apache::londefdef::table[-1]{'vinc'};   @{ $Apache::londefdef::table[-1]{'rowdata'} }[$current_row] .= '\parbox{'.$tempolen.'}{'.$data.'} '.$Apache::londefdef::table[-1]{'vinc'};
     }      }
    return $currentstring;     return $currentstring;
  }   }
Line 1526  EDITBUTTON Line 1539  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);
               my $image = Image::Magick->new;                if (-e $src) {          #new one
               my $current_figure = $image->Read($src);    my $image = Image::Magick->new;
               $width_param = $image->Get('width') * $scaling;;    my $current_figure = $image->Read($src);
       $height_param = $image->Get('height') * $scaling;;    $width_param = $image->Get('width') * $scaling;;
       undef $image;    $height_param = $image->Get('height') * $scaling;;
       my $epssrc = $src;    undef $image;
       $epssrc =~ s/(\.gif|\.jpg)$/\.eps/i;    my $epssrc = $src;
       if (not -e $epssrc) {    $epssrc =~ s/(\.gif|\.jpg)$/\.eps/i;
   my $localfile = $epssrc;    if (not -e $epssrc) {
   $localfile =~ s/.*(\/res)/$1/;        my $localfile = $epssrc;
         $localfile =~ s/.*(\/res)/$1/;
         my $file;
         my $path;
         if ($localfile =~ m!(.*)/([^/]*)$!) {
     $file = $2;
     $path = $1.'/'; 
         }
         my $signal_eps = 0;
         my @content_directory = &Apache::lonnet::dirlist($path);
         for (my $iy=0;$iy<=$#content_directory;$iy++) {
     my @tempo_array = split(/&/,$content_directory[$iy]);
     $content_directory[$iy] = $tempo_array[0];
     if ($file eq $tempo_array[0]) {
         $signal_eps = 1;
         last;
     }
         }
         if ($signal_eps) {
     my $eps_file = &Apache::lonnet::getfile($localfile);
         } else {
     $localfile = $src;
     $localfile =~ s/.*(\/res)/$1/;
     my $as = &Apache::lonnet::getfile($src);      
         }
     }
   my $file;    my $file;
   my $path;    my $path;
   if ($localfile =~ m!(.*)/([^/]*)$!) {    if ($src =~ m!(.*)/([^/]*)$!) {
       $file = $2;        $file = $2; 
       $path = $1.'/';         $path = $1.' /'; 
   }    } 
   my $signal_eps = 0;    my $newsrc = $src;
   my @content_directory = &Apache::lonnet::dirlist($path);    $newsrc =~ s/(\.gif|\.jpg)$/\.eps/i;
   for (my $iy=0;$iy<=$#content_directory;$iy++) {    $file=~s/(\.gif|\.jpg)$/\.eps/i;
       my @tempo_array = split(/&/,$content_directory[$iy]);    #do we have any specified size of the picture?
       $content_directory[$iy] = $tempo_array[0];    my $TeXwidth = &Apache::lonxml::get_param('TeXwidth',$parstack,$safeeval); 
       if ($file eq $tempo_array[0]) {    my $TeXheight = &Apache::lonxml::get_param('TeXheight',$parstack,$safeeval); 
   $signal_eps = 1;    my $width = &Apache::lonxml::get_param('width',$parstack,$safeeval);
   last;    if ($TeXwidth ne '') { 
       }        $width_param = $TeXwidth; 
     } elsif ($TeXheight ne '') { 
         $width_param = $TeXheight/$height_param*$width_param;
     } elsif ($width ne '') {
         $width_param = $width*$scaling;      
   }    }
   if ($signal_eps) {    #where can we find the picture?
       my $eps_file = &Apache::lonnet::getfile($localfile);    if (-e $newsrc) {
         if ($path) {
     $currentstring .= '\noindent\graphicspath{{'.$path.'}}\fbox{\includegraphics[width='.$width_param.' mm]{'.$file.'}} ';
         }
   } else {    } else {
       $localfile = $src;        my $temp_file;
       $localfile =~ s/.*(\/res)/$1/;        my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout.dat";
       my $as = &Apache::lonnet::getfile($src);              $temp_file = Apache::File->new('>>'.$filename); 
   }        print $temp_file "$src\n";
       }        $currentstring .= '\graphicspath{{/home/httpd/prtspool/}}\fbox{\includegraphics[width='.$width_param.' mm]{'.$file.'}} ';
       my $file;  
       my $path;  
               if ($src =~ m!(.*)/([^/]*)$!) {  
   $file = $2;  
   $path = $1.'/';   
       }  
       my $newsrc = $src;  
       $newsrc =~ s/(\.gif|\.jpg)$/\.eps/i;  
       $file=~s/(\.gif|\.jpg)$/\.eps/i;  
               #do we have any specified size of the picture?  
       my $TeXwidth = &Apache::lonxml::get_param('TeXwidth',$parstack,$safeeval);   
               my $TeXheight = &Apache::lonxml::get_param('TeXheight',$parstack,$safeeval);   
       my $width = &Apache::lonxml::get_param('width',$parstack,$safeeval);  
       if ($TeXwidth ne '') {   
   $width_param = $TeXwidth;   
       } elsif ($TeXheight ne '') {   
   $width_param = $TeXheight/$height_param*$width_param;  
       } elsif ($width ne '') {  
   $width_param = $width*$scaling;        
       }  
               #where can we find the picture?  
       if (-e $newsrc) {  
   if ($path) {  
       $currentstring .= '\noindent\graphicspath{{'.$path.'}}\fbox{\includegraphics[width='.$width_param.' mm]{'.$file.'}} ';  
   }    }
       } else {        } else {
   my $temp_file;    my $alt = &Apache::lonxml::get_param('alt',$parstack,$safeeval);
   my $filename = "/home/httpd/prtspool/$ENV{'user.name'}_$ENV{'user.domain'}_printout.dat";                    if ($alt) {
   $temp_file = Apache::File->new('>>'.$filename);         $currentstring .= ' '.$alt.' ';
   print $temp_file "$src\n";    } else {
   $currentstring .= '\graphicspath{{/home/httpd/prtspool/}}\fbox{\includegraphics[width='.$width_param.' mm]{'.$file.'}} ';                        $currentstring .= ' THE ORIGINAL PROBLEM CONTAINS EMPTY IMG TAG WITHOUT IMAGE ';
     }
       }        }
     }      }
     return $currentstring;      return $currentstring;

Removed from v.1.79  
changed lines
  Added in v.1.82


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