我使用以下代码将Word Doc转换为图像文件.但是图片看起来太大了,而且内容不合适 - 有没有办法渲染图片或将图片保存到大小?
private void btnConvert_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(txtFileName.Text))
{
MessageBox.Show("Choose a document to convert", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
txtFileName.Focus();
return;
}
ApplicationClass wordApp = new ApplicationClass();
object objectMissing = Missing.Value;
try
{
object fileName = txtFileName.Text;
FileStream fs = new FileStream(fileName.ToString(), FileMode.Open, FileAccess.Read);
Byte[] data = new Byte[fs.Length];
fs.Read(data, 0, data.Length);
Document doc = wordApp.Documents.Open(ref fileName, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing,
ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing, ref objectMissing,
ref objectMissing, ref objectMissing, ref objectMissing);
byte[] range = (byte[]) wordApp.ActiveDocument.Content.EnhMetaFileBits;
if (range != null)
{
MemoryStream ms = new MemoryStream(range);
Metafile mf = new Metafile(ms);
picImage.Height = mf.Height;
picImage.Width = mf.Width;
mf.Save("c:\\test.png", ImageFormat.Png);
picImage.Image = Image.FromFile("c:\\test.png");
}
}
finally
{
wordApp.Quit(ref objectMissing, ref objectMissing, ref objectMissing);
}
}
Run Code Online (Sandbox Code Playgroud)