首页 > 解决方案 > 使用 openxml 将图像插入 docx 会从标题中删除图像

问题描述

我正在将图像插入到现有的 docx 文件中。我正在使用此处概述的 sdk 中的代码:https ://docs.microsoft.com/en-us/office/open-xml/how-to-insert-a-picture-into-a-word-processing -document?redirectedfrom=MSDN并在此处使用:Inserting Image into DocX using OpenXML and setting the size

该代码有效。但是,当现有的 docx 文件具有标题并且该标题包含图像时,一旦添加了新图像,该图像将不再显示在 word 中。然而,这两个图像都是 docx 的一部分。其中一个在根目录的“media”文件夹中,另一个在“word”文件夹的media文件夹中。

我了解 sdk 中的“AddImagePart()”函数总是添加到“/media”文件夹中。我已经尝试将新图像添加到“/word/media”文件夹中,如下所述:Open XML SDK - AddImagePart - Change image location from /media to /word/media

但是,这并没有帮助:新图像最终出现在其他位置,但标题中的图像仍然不再显示。

我在这里有一个包含完整代码的示例项目以及示例图像和 docx(带标题):https ://1drv.ms/u/s!AtrVe2ZfnPolk6YTBre_1gqPPEa81Q?e=6l7O1v(但是,代码与 msdn 相同例子。)

有什么想法会使标题中的图像在 Word 中变得不可见?

(事实上​​,我只是构建了示例程序,因为我的真实程序中存在问题。在真实程序中,丢失的不是标题图像,而是新添加的图像之一。我不能真的把我的真实程序缩小到一个有用的例子。这个例子代码。我希望找到这个问题的解决方案会让我更接近我真正问题的解决方案。)

标签: c#imageopenxmldocx

解决方案


推荐阅读