From: Jeremias Maerki Date: Tue, 18 Apr 2006 12:36:58 +0000 (+0000) Subject: Bugfix: The generation of the PDF "d" (setdash) command was assuming that only intege... X-Git-Tag: fop-0_93~281 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=274e03076bc7dd15e444f1628d96f0703b40e16f;p=xmlgraphics-fop.git Bugfix: The generation of the PDF "d" (setdash) command was assuming that only integer values can be used but that isn't the case. Dash patterns PDFGraphics2D would be wrong in the process. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@394928 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/java/org/apache/fop/svg/PDFGraphics2D.java b/src/java/org/apache/fop/svg/PDFGraphics2D.java index 1709caba7..a563449de 100644 --- a/src/java/org/apache/fop/svg/PDFGraphics2D.java +++ b/src/java/org/apache/fop/svg/PDFGraphics2D.java @@ -1271,20 +1271,14 @@ public class PDFGraphics2D extends AbstractGraphics2D { if (da != null) { currentStream.write("["); for (int count = 0; count < da.length; count++) { - if (((int)da[count]) == 0) { - // the dasharray units in pdf are (whole) numbers - // in user space units, cannot be 0 - currentStream.write("1"); - } else { - currentStream.write("" + ((int)da[count])); - } + currentStream.write(PDFNumber.doubleOut(da[count])); if (count < da.length - 1) { currentStream.write(" "); } } currentStream.write("] "); float offset = bs.getDashPhase(); - currentStream.write(((int)offset) + " d\n"); + currentStream.write(PDFNumber.doubleOut(offset) + " d\n"); } int ec = bs.getEndCap(); switch (ec) { diff --git a/status.xml b/status.xml index cfd0bd359..df22fdf1a 100644 --- a/status.xml +++ b/status.xml @@ -27,6 +27,11 @@ + + Bugfix: The generation of the PDF "d" (setdash) command was assuming that + only integer values can be used but that isn't the case. Dash patterns + PDFGraphics2D would be wrong in the process. + Bugfix: Fixed a division by zero problem in TTFReader and improved the detection of the capHeight and xHeight font metric values for TrueType fonts.