1
我有一個XSL-FO樣式表,裏面有一個SVG,它是整個頁面的大小。我試圖在SVG上絕對放置一個圖像。當我添加該圖像時,第二頁被強制輸出到PDF輸出。沒有塊或SVG,只有一個頁面。這裏是代碼:爲什麼這個塊容器強制第二頁?
<xsl:template match="MyTag">
<fo:block>
<fo:block-container absolute-position="absolute" top="110px" left="557px" height="185px" width="160px">
<fo:block>
<fo:external-graphic>
<xsl:attribute name="src">
<xsl:value-of select="Image"/>
</xsl:attribute>
<xsl:attribute name="content-height">185px</xsl:attribute>
</fo:external-graphic>
</fo:block>
</fo:block-container>
<fo:instream-foreign-object>
<svg>
<!-- The full page sized SVG created by Inkscape here -->
</svg>
</fo:instream-foreigh-object>
</fo:block>
</xsl:template>
任何想法,我會做錯了,這是迫使第二個空白頁?我的理解是,如果某件事情是絕對定位的,它不應該影響元素的流動,但它似乎在這裏。
對於它的價值,我最初嘗試將圖像作爲一個<image>
標籤放入SVG中,但它從未出現過,我不確定這是pdf渲染器(IBEX)還是其他問題,所以我正在努力解決這個問題。
我不認爲這裏的XSL-FO是相關的。提供創建的SVG可能會幫助更多。 – Phrogz 2011-03-31 20:02:47
SVG元素是1400行。似乎更多有趣的信息。有一些有用的東西嗎? – Morinar 2011-03-31 21:13:01
我的感覺是,它可能會更容易將圖像直接添加到SVG文件。您應該將其添加到文件末尾,以便它具有比所有其他元素更高的z-index。也許用這個圖像創建一個簡化的SVG文件例子,看看你的SVG渲染器是否會渲染它。您也可以將IBEX渲染器的渲染與備用渲染器進行比較,包括那些具有更好工具支持的呈現器。例如,Chrome包含Webkit的Web檢查器,它允許您將鼠標懸停在DOM中的元素上,這將以圖形方式突出顯示其bbox。 – jbeard4 2011-04-01 10:47:45