From 9508968e6e53525d87c2620b77753f28032e7779 Mon Sep 17 00:00:00 2001 From: Vincent Hennebert Date: Tue, 4 Sep 2012 14:34:12 +0000 Subject: [PATCH] Bugzilla 53827: When an fo:block has a non-zero value for its text-indent property and is broken over two pages of different widths, then the first line on the second page is missing one word and appears indented. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1380667 13f79535-47bb-0310-9956-ffa450edef68 --- .../layoutmgr/inline/LineLayoutManager.java | 4 ++ status.xml | 5 ++ .../flow_changing-ipd_text-indent.xml | 57 +++++++++++++++++++ 3 files changed, 66 insertions(+) create mode 100644 test/layoutengine/standard-testcases/flow_changing-ipd_text-indent.xml diff --git a/src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java b/src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java index 00cd427d9..ac3f8f878 100644 --- a/src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java +++ b/src/java/org/apache/fop/layoutmgr/inline/LineLayoutManager.java @@ -649,6 +649,10 @@ public class LineLayoutManager extends InlineStackingLayoutManager log.trace("Restarting line breaking from index " + restartPosition.getIndex()); int parIndex = restartPosition.getLeafPos(); KnuthSequence paragraph = knuthParagraphs.get(parIndex); + if (paragraph instanceof Paragraph) { + ((Paragraph) paragraph).ignoreAtStart = 0; + isFirstInBlock = false; + } paragraph.subList(0, restartPosition.getIndex() + 1).clear(); Iterator iter = paragraph.iterator(); while (iter.hasNext() && !iter.next().isBox()) { diff --git a/status.xml b/status.xml index 89f9bf4d2..b8fc34aa8 100644 --- a/status.xml +++ b/status.xml @@ -62,6 +62,11 @@ documents. Example: the fix of marks layering will be such a case when it's done. --> + + When an fo:block has a non-zero value for its text-indent property and is broken over two + pages of different widths, then the first line on the second page is missing one word and + appears indented. + Prevented the TIFF configurator from overriding the Bitmap configurator unless CCITT compression is enabled. diff --git a/test/layoutengine/standard-testcases/flow_changing-ipd_text-indent.xml b/test/layoutengine/standard-testcases/flow_changing-ipd_text-indent.xml new file mode 100644 index 000000000..0d1d141a9 --- /dev/null +++ b/test/layoutengine/standard-testcases/flow_changing-ipd_text-indent.xml @@ -0,0 +1,57 @@ + + + + + +

+ This test checks that the text-indent property plays nicely with changing IPD. +

+
+ + + + + + + + + + + + + + + + + + Setting a non-zero value for the “text-indent” property on an + fo:block should not cause loss of text. Setting a non-zero value for the “text-indent” + property on an fo:block should not cause loss of text. + + + + + + + + + + +
-- 2.39.5