我的目标是处理
.docx公司
使用Apache POI以Java编写文档。我想从文档中提取所有内容以创建一个新的文档,但只能包含特定的内容,我可以从处理过的文档中选择这些内容。
到目前为止,这对表格和文本有效,但我对图片有一个问题。通常我会这样提取它们:
List<XWPFPictureData> images = r.getEmbeddedPictures();
哪里
r
从段落中提取,类型为
XWPFRun
.
这里最大的问题是,这种解决方案只适用于某些图像,这取决于图像如何插入word文档。
我可以访问运行的xml代码,并尝试查找这样的图像,这在python中运行良好,您可以在其中声明xpath查询。
我在Java中尝试了同样的方法,但收到了一条错误消息。
以下是我的代码,用于检查运行是否包含图像:
r.getCTR().selectPath(".//w:drawing/wp:inline/a:graphic/a:graphicData/pic:pic/pic:blipFill/a:blip/@r:embed"))
它返回以下异常: