aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/org/apache/fop
diff options
context:
space:
mode:
authorManuel Mall <manuel@apache.org>2005-10-12 16:11:47 +0000
committerManuel Mall <manuel@apache.org>2005-10-12 16:11:47 +0000
commit7fd03980fea71edc28578218f3a53ca0665698df (patch)
tree381070dd84dcc599093b053727cde8e6767e9097 /src/java/org/apache/fop
parent0129397f8aebdbef7eb47695dbbc60e699c649d7 (diff)
downloadxmlgraphics-fop-7fd03980fea71edc28578218f3a53ca0665698df.tar.gz
xmlgraphics-fop-7fd03980fea71edc28578218f3a53ca0665698df.zip
Fixed incorrect IPD for blocks nested in inlines and added IPD adjustment for inlineblockparents with borders when rendering
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@314953 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'src/java/org/apache/fop')
-rwxr-xr-xsrc/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java13
-rw-r--r--src/java/org/apache/fop/render/AbstractRenderer.java1
2 files changed, 9 insertions, 5 deletions
diff --git a/src/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java b/src/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java
index cd7d962c8..fdfcca373 100755
--- a/src/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java
+++ b/src/java/org/apache/fop/layoutmgr/inline/InlineLayoutManager.java
@@ -235,12 +235,12 @@ public class InlineLayoutManager extends InlineStackingLayoutManager {
if (borderProps != null) {
childLC.setLineStartBorderAndPaddingWidth(context.getLineStartBorderAndPaddingWidth()
- + borderProps.getPadding(CommonBorderPaddingBackground.START, true, this)
- + borderProps.getBorderWidth(CommonBorderPaddingBackground.START, true)
+ + borderProps.getPaddingStart(true, this)
+ + borderProps.getBorderStartWidth(true)
);
childLC.setLineEndBorderAndPaddingWidth(context.getLineEndBorderAndPaddingWidth()
- + borderProps.getPadding(CommonBorderPaddingBackground.END, true, this)
- + borderProps.getBorderWidth(CommonBorderPaddingBackground.END, true)
+ + borderProps.getPaddingEnd(true, this)
+ + borderProps.getBorderEndWidth(true)
);
}
@@ -250,7 +250,10 @@ public class InlineLayoutManager extends InlineStackingLayoutManager {
// Leave room for start/end border and padding
if (borderProps != null) {
childLC.setRefIPD(childLC.getRefIPD()
- - borderProps.getIPPaddingAndBorder(false, this));
+ - borderProps.getPaddingStart(lastChildLM != null, this)
+ - borderProps.getBorderStartWidth(lastChildLM != null)
+ - borderProps.getPaddingEnd(hasNextChildLM(), this)
+ - borderProps.getBorderEndWidth(hasNextChildLM()));
}
}
// get KnuthElements from curLM
diff --git a/src/java/org/apache/fop/render/AbstractRenderer.java b/src/java/org/apache/fop/render/AbstractRenderer.java
index eda205d94..16c8f75ae 100644
--- a/src/java/org/apache/fop/render/AbstractRenderer.java
+++ b/src/java/org/apache/fop/render/AbstractRenderer.java
@@ -659,6 +659,7 @@ public abstract class AbstractRenderer
* @param ibp the inline block parent to render
*/
protected void renderInlineBlockParent(InlineBlockParent ibp) {
+ currentIPPosition += ibp.getBorderAndPaddingWidthStart();
// For inline content the BP position is updated by the enclosing line area
int saveBP = currentBPPosition;
renderBlock(ibp.getChildArea());