簡體   English   中英

xsl-fo:自動調整固定單元格中的字體大小

[英]xsl-fo: Auto resize font size in a fixed cell

我有一個固定高度的單元格,並且我希望其中的文本字體大小隨單元格內的文本量相應減少。

更新:

抱歉。 但我想您會明白問題所在。 我正在嘗試修改一些xslt模式,該模式用於從XML創建PDF文檔。 而且我必須將文檔打印在空白處。 不幸的是,我的空間有限,因此必須以某種方式從XML中讀取數據。 為了方便起見,我使用桌子。 而且我必須在具有固定高度和寬度的單元格中定位數據。 如果數據更長,那么我期望像元高度會增加。 我想以某種方式避免它。 但是我保留了所有數據,因此無法使用wrap。 而且我認為自動調整字體大小會很酷。

我發現了一些有趣的方法。 這不是自動的方法,但是可以幫助我解決問題。

<x:variable name="NDSPercent" select="./NDSPercent"/>
<x:if test="string-length($NDSPercent) &lt; 3">
  <fo:block>
    <x:value-of select="$NDSPercent"/>
  </fo:block>
</x:if>
<x:if test="string-length($NDSPercent) &gt; 3">
  <fo:block font-size="8pt">
    <x:value-of select="$NDSPercent"/>
  </fo:block>
</x:if>

W3C的Print and Page Layout Community Group(打印和頁面布局社區組)提供了一些擴展功能,用於在XSLT中運行FO處理器以獲取區域樹,以便您可以根據格式化區域進行決策。

您的用法聽起來像http://www.w3.org/community/ppl/wiki/XSLTExtensions#Example_5_-_Copyfitting_by_adjusting_.27font-size.27上的“通過調整'font-size'進行擬合”示例

這是當時的PPL CG說明文字,其大小可填充一個方框:

PPL CG說明的大小可填充一個框

如果使用Antenna House的AH格式器,則可以使用其溢出擴展名來獲取AH格式器來為您調整文本大小。 請參閱http://www.antennahouse.com/product/ahf60/docs/ahf-ext.html#ext-overflow的多個擴展屬性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM