git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@321108 13f79535-47bb-0310-9956-ffa450edef68tags/fop-0_90-alpha1
@@ -447,6 +447,13 @@ public class InlineLayoutManager extends InlineStackingLayoutManager { | |||
parent.setBPD(alignmentContext.getHeight()); | |||
if (parent instanceof InlineParent) { | |||
parent.setOffset(alignmentContext.getOffset()); | |||
} else if (parent instanceof InlineBlockParent) { | |||
// All inline elements are positioned by the renderers relative to | |||
// the before edge of their content rectangle | |||
if (borderProps != null) { | |||
parent.setOffset(borderProps.getPaddingBefore(false, this) | |||
+ borderProps.getBorderBeforeWidth(false)); | |||
} | |||
} | |||
setCurrentArea(parent); | |||
@@ -662,6 +662,7 @@ public abstract class AbstractRenderer | |||
currentIPPosition += ibp.getBorderAndPaddingWidthStart(); | |||
// For inline content the BP position is updated by the enclosing line area | |||
int saveBP = currentBPPosition; | |||
currentBPPosition += ibp.getOffset(); | |||
renderBlock(ibp.getChildArea()); | |||
currentBPPosition = saveBP; | |||
} |
@@ -638,6 +638,7 @@ public class XMLRenderer extends PrintRenderer { | |||
atts.clear(); | |||
addAreaAttributes(ibp); | |||
addTraitAttributes(ibp); | |||
addAttribute("offset", ibp.getOffset()); | |||
startElement("inlineblockparent", atts); | |||
super.renderInlineBlockParent(ibp); | |||
endElement("inlineblockparent"); |
@@ -64,6 +64,7 @@ | |||
<checks> | |||
<eval expected="347000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="3000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-start"/> | |||
@@ -89,6 +90,7 @@ | |||
<eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-start"/> | |||
<eval expected="347000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="3000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-end"/> | |||
@@ -106,6 +108,7 @@ | |||
<eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-start"/> | |||
<eval expected="350000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="2000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="1000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@padding-after"/> |
@@ -90,6 +90,7 @@ | |||
<checks> | |||
<eval expected="344000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="3000" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[2]/lineArea[2]/inlineblockparent/@border-start"/> | |||
@@ -121,6 +122,7 @@ | |||
<eval expected="2000" xpath="//flow/block[5]/lineArea[1]/inlineparent/@padding-end"/> | |||
<eval expected="344000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="3000" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[5]/lineArea[2]/inlineblockparent/@border-start"/> | |||
@@ -142,6 +144,7 @@ | |||
<eval expected="2000" xpath="//flow/block[8]/lineArea[1]/inlineparent/@padding-end"/> | |||
<eval expected="344000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipd"/> | |||
<eval expected="350000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@ipda"/> | |||
<eval expected="3000" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@offset"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-after"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-before"/> | |||
<eval expected="(solid,#ff0000,1000)" xpath="//flow/block[8]/lineArea[2]/inlineblockparent/@border-start"/> |