【发布时间】:2018-03-29 11:45:58
【问题描述】:
我有包含此类字段的 .docx 文件:
{INCLUDEPICTURE \d "ooxWord://media/image1.jpg" * MERGEFORMATINET}
{INCLUDEPICTURE \d "ooxWord://media/image2.jpg" * MERGEFORMATINET}
我想将 .docx 文件转换为 .html。当我使用 MS Word 执行此操作时,会生成新的 .html 文件。还创建了文件夹 {filename}_files。此文件夹包含 .html 在 IMG 标记中引用的图像。
我使用 Interop.Word。问题是当我在代码中调用 SaveAs 时,只有第一个图像具有正确的 src 和文件夹路径。第二张图片在 src 中有“ooxWord://media/image2.jpg”。因此,当我在浏览器中打开 .html 时,我只能看到第一张图片。代码:
Microsoft.Office.Interop.Word._Application wrdApp = new Microsoft.Office.Interop.Word.Application();
wrdApp.Visible = false;
Microsoft.Office.Interop.Word._Document wrdDoc = wrdApp.Documents.Open(sourcePath);
wrdDoc.SaveAs2(targetPath, WdSaveFormat.wdFormatFilteredHTML);
wrdDoc.Close();
wrdApp.Quit();
我只能使用互操作。您有任何解决方法的想法吗?也许我应该传递特殊参数?
【问题讨论】:
-
你尝试过任何代码吗?
-
已添加代码。
-
我建议您首先以最终用户身份在 Word 中进行试验,尝试各种 SaveAs 和 Web 设置选项,直到 Word 以最适合您要求的格式导出为 HTML。然后将其记录在宏中并将该输出与您正在使用的输出进行比较。 Word 从来都不是一个非常可靠的 HTML 输出源——它倾向于使用其专有的往返格式,而不是“标准”HTML...
-
我会试试的!!!谢谢!!!
-
没有帮助。