我想将MS word(docx / doc)文档页面导出到Image(jpeg / png)。
我正在为每张幻灯片使用office interop export api进行演示(pptx / ppt),但没有找到相应的API for word。
需要API /替代方法来实现这一目标。
答案 0 :(得分:3)
基于这个类似的问题:“Saving a word document as an image”你可以这样做:
const string basePath = @"C:\Users\SomeUser\SomePath\";
var docPath = Path.Combine(basePath, "documentA.docx");
var app = new Application()
{
Visible = true
};
var doc = app.Documents.Open(docPath);
foreach (Window window in doc.Windows)
{
foreach (Pane pane in window.Panes)
{
for (var i = 1; i <= pane.Pages.Count; i++)
{
var page = pane.Pages[i];
var bits = page.EnhMetaFileBits;
var target = Path.Combine(basePath, string.Format("page-no-{0}", i));
using (var ms = new MemoryStream(bits))
{
var image = Image.FromStream(ms);
var pngTarget = Path.ChangeExtension(target, "png");
image.Save(pngTarget, ImageFormat.Png);
}
}
}
}
app.Quit();
基本上,我使用Page.EhmMetaFileBits
属性,根据documentation:
返回一个Object,表示如何使用的图片表示 出现文字页面。
...并基于此,我创建了一个图像并将其保存到磁盘。