簡體   English   中英

XSL-fo pdf的圖像大小問題

[英]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屬性。

http://www.sagehill.net/docbookxsl/ImageSizing.html

暫無
暫無

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

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