From f31c3fbd4ba6f6720a9ddc41026e7d2c8fd79793 Mon Sep 17 00:00:00 2001 From: "Andreas L. Delmelle" Date: Sun, 12 Apr 2009 19:54:03 +0000 Subject: [PATCH] Fix the behaviour of pixel-lengths: influenced by target-resolution, rather than source-resolution (which is meant for images) git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@764317 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/fop/fo/expr/PropertyParser.java | 6 ++-- .../fop/fo/properties/LengthProperty.java | 2 +- test/fotree/testcases/pixel_length.fo | 33 +++++++++++++++++++ 3 files changed, 37 insertions(+), 4 deletions(-) create mode 100755 test/fotree/testcases/pixel_length.fo diff --git a/src/java/org/apache/fop/fo/expr/PropertyParser.java b/src/java/org/apache/fop/fo/expr/PropertyParser.java index 7ae1db7f3..4f1cdbdc6 100644 --- a/src/java/org/apache/fop/fo/expr/PropertyParser.java +++ b/src/java/org/apache/fop/fo/expr/PropertyParser.java @@ -99,7 +99,7 @@ public final class PropertyParser extends PropertyTokenizer { /** * Private constructor. Called by the static parse() method. * @param propExpr The specified value (attribute on the xml element). - * @param propInfo A PropertyInfo object representing the context in + * @param pInfo A PropertyInfo object representing the context in * which the property expression is to be evaluated. */ private PropertyParser(String propExpr, PropertyInfo pInfo) { @@ -310,12 +310,12 @@ public final class PropertyParser extends PropertyTokenizer { propInfo.currentFontSize()); } else { if ("px".equals(unitPart)) { - //pass the ratio between source-resolution and + //pass the ratio between target-resolution and //the default resolution of 72dpi prop = FixedLength.getInstance( numPart, unitPart, propInfo.getPropertyList().getFObj() - .getUserAgent().getSourceResolution() / 72.0f); + .getUserAgent().getTargetResolution() / 72.0f); } else { //use default resolution of 72dpi prop = FixedLength.getInstance(numPart, unitPart); diff --git a/src/java/org/apache/fop/fo/properties/LengthProperty.java b/src/java/org/apache/fop/fo/properties/LengthProperty.java index 4ffe38074..16bbe430c 100644 --- a/src/java/org/apache/fop/fo/properties/LengthProperty.java +++ b/src/java/org/apache/fop/fo/properties/LengthProperty.java @@ -59,7 +59,7 @@ public abstract class LengthProperty extends Property //Assume pixels (like in HTML) when there's no unit return FixedLength.getInstance( p.getNumeric().getNumericValue(), "px", - propertyList.getFObj().getUserAgent().getSourceResolution() / 72.0f); + propertyList.getFObj().getUserAgent().getTargetResolution() / 72.0f); } Length val = p.getLength(); if (val != null) { diff --git a/test/fotree/testcases/pixel_length.fo b/test/fotree/testcases/pixel_length.fo new file mode 100755 index 000000000..2ad1d4a19 --- /dev/null +++ b/test/fotree/testcases/pixel_length.fo @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + Block 1 + + + + -- 2.39.5