【问题标题】:How to correctly position a header image with docx4j?如何使用 docx4j 正确定位标题图像?
【发布时间】:2014-07-14 20:30:08
【问题描述】:

我正在尝试转换此 Word 文档,其标题在右侧显示图像

http://www.filesnack.com/files/cduiejc7

使用此示例代码转为 PDF:

https://github.com/plutext/docx4j/blob/master/src/samples/docx4j/org/docx4j/samples/ConvertOutPDF.java

结果如下:

http://www.filesnack.com/files/ctjs659h

虽然 Word 文档的标题图像在右侧,但转换后的 PDF 显示在左侧。

如何使 docx4j 将原始文档复制为 PDF?

【问题讨论】:

    标签: docx4j


    【解决方案1】:

    您的图像相对于段落定位:

          <w:drawing>
        <wp:anchor distT="0" distB="0" distL="114300" distR="114300" simplePos="0" relativeHeight="251658240" behindDoc="0" locked="0" layoutInCell="1" allowOverlap="1" wp14:anchorId="791936E3" wp14:editId="575B92C8">
          <wp:simplePos x="0" y="0"/>
          <wp:positionH relativeFrom="column">
            <wp:posOffset>5317388</wp:posOffset>
          </wp:positionH>
          <wp:positionV relativeFrom="paragraph">
            <wp:posOffset>-325755</wp:posOffset>
          </wp:positionV>
    

    docx4j 在 PDF 输出中支持类似内容的潜力受到 XSL FO 支持的限制。请参阅 docx4j 的 TextBoxTest 类,了解我们可以使用文本框做什么。

    目前,虽然我们可以定位一些文本框;我们不会对浮动图像做同样的事情:https://github.com/plutext/docx4j/issues/127

    同时,对于某些情况(例如向右浮动),一种可能的解决方法是使用表格。

    或者,您可以尝试将图像放在文本框中!

    【讨论】:

    • 谢谢!恕我直言,在一个完美的世界中,docx4j 应该对用户完全隐藏这些难以阅读和理解的 XSL FO 内容。但是唉......我已经尝试过“文本框内的图像”方法。虽然看起来很有希望,但我并没有得到可靠的结果。但是,我通过使用一张桌子得到了我想要的东西。好旧的布局表...
    猜你喜欢
    • 1970-01-01
    • 2023-01-03
    • 2020-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多