這是我用之前:如何在Apache FOP中設置全局字體系列?
<fo:block font-family="Tahoma">Text</fo:block>
我怎麼可以指定「宋體」是字體家族對整個文檔?
我要尋找的等效CSS的
body {
font-family: "Tahoma";
}
這是我用之前:如何在Apache FOP中設置全局字體系列?
<fo:block font-family="Tahoma">Text</fo:block>
我怎麼可以指定「宋體」是字體家族對整個文檔?
我要尋找的等效CSS的
body {
font-family: "Tahoma";
}
如果你要爲整個文檔,你可以將它設置在FO默認字體:根。它應該由沒有指定字體系列的每個子節點繼承。
<fo:root font-family="Tahoma">
<!-- rest of document -->
</fo:root>
<fonts>
<referenced-fonts>
<match font-family="Tahoma"/>
</referenced-fonts>
</fonts>
OR
<fo:page-sequence master-reference="A4-portrait">
<fo:flow flow-name="xsl-region-body">
<fo:block font-size="10pt" font-family="Tahoma">
Text <xsl:value-of select="name"/>
</fo:block>
</fo:flow>
</fo:page-sequence>
第一種方式似乎不工作,第二..是如何從什麼不同的我已經寫在我的問題? (本地字體家族)? –
這裏是一個鏈接到原始Apache的文檔[FOP](http://xmlgraphics.apache.org/fop/trunk/fonts.html)我已經在我的項目的配置中使用它。它工作得很好。 – stanlyF
請注意,我在嵌入字體 –
有沒有辦法做到這一點,在CSS,如果你實際上並沒有做的方式一個元素來匹配你的特定字體。 如果你想要的只是設置一個字體的一切,但一些例外,將其設置爲< fo:root >然後當你需要應該做的時候改變它。 字體是否是默認字體或通過您的配置文件定義沒有區別。
編輯:
的
body { font-family: "Tahoma"; }
相當於將
<xsl:template match="body">
<fo:block font-family="Tahoma">
Content
</fo:block>
</xsl:template>
我假設'Content'是一個正文,即我必須將整個文檔放在那裏? –
您可以使用節點FO:包裝繼承屬性,將其內容孩子的
<fo:page-sequence master-reference="A4-portrait">
<fo:flow flow-name="xsl-region-body">
<fo:wrapper font-size="10pt" font-family="Tahoma">
<fo:block>
Text <xsl:value-of select="name"/>
</fo:block>
<fo:block>
Another text
</fo:block>
</fo:wrapper>
</fo:flow>
</fo:page-sequence>
fo:根元素沒有font-family屬性。請參閱規範(http://www.w3.org/TR/2001/REC-xsl-20011015/slice6.html#fo_root) – celbos
雖然它可能不符合規範,但我可以在Apache FOP中驗證它適用於我 – Ryan