2016-11-16 65 views
1

我無法使用DITA-OT PDF2剝離FOP內聯元素中的空格。這是我的代碼片段:在FOP內聯元素中刪除空格

<p>1 BEFORE <uicontrol>test</uicontrol> AFTER</p> 
<p>2 BEFORE <uicontrol> test</uicontrol> AFTER</p> 
<p>3 BEFORE <uicontrol>test </uicontrol> AFTER</p> 
<p>4 BEFORE <uicontrol><keyword keyref="test"/> </uicontrol> AFTER</p> 
<p>5 BEFORE <uicontrol> <keyword keyref="test"/></uicontrol> AFTER</p> 
<p>6 BEFORE <uicontrol> 
    <keyword keyref="test"/> 
</uicontrol> AFTER</p> 
<p>7 BEFORE <uicontrol> 
    <keyword keyref="test"/> 
</uicontrol> AFTER</p> 

渲染到:

這是我的屬性設置:

<xsl:attribute-set name="uicontrol"> 
    <xsl:attribute name="white-space">nowrap</xsl:attribute> 
    <xsl:attribute name="white-space-treatment">ignore</xsl:attribute> 
    <xsl:attribute name="white-space-collapse">true</xsl:attribute> 
    <xsl:attribute name="linefeed-treatment">treat-as-zero-width-space</xsl:attribute> 
    <xsl:attribute name="background-color">#ff0000</xsl:attribute> 
</xsl:attribute-set> 

所有紅色的空格都被剝離。我的錯誤在哪裏?

回答

1

FOP似乎在「空白處理」難度:

XSL-FO Property Support Table (§7)

因此,它可能需要使用< XSL:帶狀空間元素=「uicontrol」 >加正常化空間()在uicontrol中的text()函數。

以下是結果指定< XSL時:帶狀空間元素= 「uicontrol」 >

After applying xsl:strip-space

爲了便於參考,天線房屋呈現原始的樣式定義如下:

AHF render result

希望這有助於您的發展。

+0

非常感謝。 ''搞定了 –