[英]XSL-fo Image size issue with pdfs
我有大量的XML文檔,它們是在docbook中創建的,並且通過maven,以html for和pdf形式發布。 幾代人工作正常,html看起來很好。 我遇到的問題是pdf版本中圖像的大小。 圖像是截圖的集合,一些是全屏的,一些是大約2 / 3rds的寬度和高度,其他是小搜索框。 很明顯,我需要對imagedata的屬性進行大規模的重構。 我想知道我該怎么重構它? 我正在尋找一種方法來創建最多4種類型的圖像,並為這些圖像強制執行自己的尺寸調整。 圖像的示例如下所示:
<section><title>Screenshot</title>
<mediaobject>
<imageobject>
<imagedata fileref="./views/screenshots/editNote.png" scalefit="0" width="100%"/>
</imageobject>
</mediaobject>
</section>
它只適用於我的一些屏幕截圖尺寸。
我已經玩過scalefit,width和contentwidth / contentheight,它們似乎解決了問題的不同部分。 我也應該關注視口嗎?
注意:因為我可以打開XSL中的“排除屬性”,所以不用擔心會破壞html生成。
這不是您要求的嚴格要求,但是您是否已將圖像文件中的DPI設置標准化? 雖然在HTML渲染中被忽略,但它們在docbook-> PDF渲染中至關重要。
當我在過去處理這個問題時,修復DPI讓我無需進一步調整DocBook源代碼。
你有@scalefit="0"
試試@scalefit="1"
:
<section><title>Screenshot</title>
<mediaobject>
<imageobject>
<imagedata fileref="./views/screenshots/editNote.png"
scalefit="1" width="100%" contentdept="100%"/>
</imageobject>
</mediaobject>
</section>
以下是使用縮放屬性的一些指導。
要將圖形縮放到給定寬度,請將imagedata元素中的contentwidth設置為該大小,例如contentwidth =“8.5cm”。 如果指定不帶單位的數字,則假定為像素。
要縮放圖形以適合打印輸出中的可用寬度,請使用width =“100%”和scalefit =“1”屬性。 對於列表中的縮進文本,可用寬度是從當前縮進到右邊距。
為了使打印輸出的圖形保持其自然尺寸,除非它太大而不適合可用寬度,在這種情況下縮小它以適應,使用scalefit =“1”,width =“100%”,contentdepth =“100% “屬性。
...
- 某些XSL-FO處理器不支持所有這些屬性。 您可能需要嘗試查看哪些有效。 例如,FOP版本0.20.5將寬度視為contentwidth,並忽略任何實際的contentwidth屬性。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.