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]