当前位置: 首页 > 知识库问答 >
问题:

使用Java用Docx4j和OpenDOPE将图像插入Word文档中的特定点

朱淮晨
2023-03-14

我有两个文件--一个是标准MS-Word docx格式文件形式的模板文档,它使用Plutext开发的MS-Word OpenDoPE外接程序用内容控件占位符标记。第二个文件是包含数据的XML文件。使用Docx4j中的例程完美地合并了这两个功能。到目前为止一切都很好。问题是XML文件只包含图像所在的文件路径名。因此,在合并之后,Word文档包含一个指示图像所在位置的字符串来代替Content控件占位符。如何在文档中获取图像来代替图像位置字符串。

考虑的一种方法是用图像的base64编码替换XML数据文件中的图像路径(不确定具体如何做到这一点,但OpenDoPE的文档表明它应该有效)。另一个选择似乎是在已经合并的Word文档中找到路径字符串,然后使用DOCX4J库中的BinaryPartAbstractImage函数将图像插入到位。这样做的问题似乎在于OpenXML文档中的任何搜索和替换操作似乎都充满了困难。

共有1个答案

曹旭东
2023-03-14

在创作时,将base64编码的图像放在示例XML文件中的某个元素中,与“友好的”OpenDoPE外接程序一起使用。

然后,当您将该元素拖到文档表面上时,外接程序应检测到它是图像,并将相应的标记添加到content控件中。

如果这样做了,那么在运行时,将使用运行时XML中的任何base64编码映像。

 类似资料:
  • 如何从docx4j中删除图像。 假设我有10个映像,我想用我自己的字节数组/二进制数据替换8个映像,我想删除剩下的2个。 我也有麻烦在定位图像。 是否可以用图像替换文档中的文本占位符?

  • 目前,我从文档中获得的所有文本如下所示:

  • 问题内容: 这是我第一次使用Apache POI,并且已经在该站点上提出了我要问的问题,但是没有给他们明确的答案,所以我别无选择,只能接受您的所有帮助。 我正在尝试编写一个Java程序,该程序从一个文件夹中获取图像并将该图像插入到Word文档中。我正在为此程序使用Apache POI。我在这里发布我的代码。 我可以创建word文档文件,也可以插入文本,但是该行却给我错误,例如“将演员转换为docx

  • 我正在尝试使用Docx4j库将图像添加到Document(. docx),代码如下。该图像已经存在于本地机器中,最初我教它不支持png,然后我将图像重命名为jpg,但它仍然会引发错误 下面是错误消息。

  • 下面是一个简单的例子: first.docx=简单文本 second.docx=简单文本+图像 问题是我什么时候存钱。出现以下错误: 谢谢