jeremias    2003/02/16 04:41:58

  Modified:    src/org/apache/fop/svg Tag: fop-0_20_2-maintain
                        PDFGraphics2D.java
  Log:
  Fixed some sources of "wrong operand type" error in Acrobat Reader.
  They were caused by rounding bugs, mostly experienced with SVG files coming from 
OpenOffice.
  The PDF contained matrices like "0 0 0 0 0 0 cm" when the values really shouldn't be 
zero.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.20.2.10 +20 -22    xml-fop/src/org/apache/fop/svg/PDFGraphics2D.java
  
  Index: PDFGraphics2D.java
  ===================================================================
  RCS file: /home/cvs/xml-fop/src/org/apache/fop/svg/PDFGraphics2D.java,v
  retrieving revision 1.20.2.9
  retrieving revision 1.20.2.10
  diff -u -r1.20.2.9 -r1.20.2.10
  --- PDFGraphics2D.java        8 Nov 2002 10:25:29 -0000       1.20.2.9
  +++ PDFGraphics2D.java        16 Feb 2003 12:41:57 -0000      1.20.2.10
  @@ -548,12 +548,12 @@
           AffineTransform trans = getTransform();
           double[] tranvals = new double[6];
           trans.getMatrix(tranvals);
  -        currentStream.write(PDFNumber.doubleOut(tranvals[0]) + " "
  -                            + PDFNumber.doubleOut(tranvals[1]) + " "
  -                            + PDFNumber.doubleOut(tranvals[2]) + " "
  -                            + PDFNumber.doubleOut(tranvals[3]) + " "
  -                            + PDFNumber.doubleOut(tranvals[4]) + " "
  -                            + PDFNumber.doubleOut(tranvals[5]) + " cm\n");
  +        currentStream.write(PDFNumber.doubleOut(tranvals[0], 8) + " "
  +                            + PDFNumber.doubleOut(tranvals[1], 8) + " "
  +                            + PDFNumber.doubleOut(tranvals[2], 8) + " "
  +                            + PDFNumber.doubleOut(tranvals[3], 8) + " "
  +                            + PDFNumber.doubleOut(tranvals[4], 8) + " "
  +                            + PDFNumber.doubleOut(tranvals[5], 8) + " cm\n");
   
           PathIterator iter = s.getPathIterator(new AffineTransform());
           while (!iter.isDone()) {
  @@ -938,12 +938,12 @@
           double[] vals = new double[6];
           trans.getMatrix(vals);
   
  -        currentStream.write(PDFNumber.doubleOut(vals[0]) + " "
  -                            + PDFNumber.doubleOut(vals[1]) + " "
  -                            + PDFNumber.doubleOut(vals[2]) + " "
  -                            + PDFNumber.doubleOut(vals[3]) + " "
  -                            + PDFNumber.doubleOut(vals[4]) + " "
  -                            + PDFNumber.doubleOut(vals[5]) + " cm\n");
  +        currentStream.write(PDFNumber.doubleOut(vals[0], 8) + " "
  +                            + PDFNumber.doubleOut(vals[1], 8) + " "
  +                            + PDFNumber.doubleOut(vals[2], 8) + " "
  +                            + PDFNumber.doubleOut(vals[3], 8) + " "
  +                            + PDFNumber.doubleOut(vals[4], 8) + " "
  +                            + PDFNumber.doubleOut(vals[5], 8) + " cm\n");
           currentStream.write("1 0 0 -1 0 0 Tm [" + startText);
   
           int l = s.length();
  @@ -1084,12 +1084,12 @@
   
               }
   
  -            currentStream.write(PDFNumber.doubleOut(vals[0]) + " "
  -                                + PDFNumber.doubleOut(vals[1]) + " "
  -                                + PDFNumber.doubleOut(vals[2]) + " "
  -                                + PDFNumber.doubleOut(vals[3]) + " "
  -                                + PDFNumber.doubleOut(vals[4]) + " "
  -                                + PDFNumber.doubleOut(vals[5]) + " Tm (" + ch
  +            currentStream.write(PDFNumber.doubleOut(vals[0], 8) + " "
  +                                + PDFNumber.doubleOut(vals[1], 8) + " "
  +                                + PDFNumber.doubleOut(vals[2], 8) + " "
  +                                + PDFNumber.doubleOut(vals[3], 8) + " "
  +                                + PDFNumber.doubleOut(vals[4], 8) + " "
  +                                + PDFNumber.doubleOut(vals[5], 8) + " Tm (" + ch
                                   + ") Tj\n");
           }
   
  @@ -1285,11 +1285,9 @@
           }
   
           // needed for compiling under jdk1.4
  -        @jdk14codestart@
           public java.awt.image.VolatileImage createCompatibleVolatileImage(int 
width, int height) {
               return null;
           }
  -        @jdk14codeend@
       }
   
       /**
  
  
  

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to