C#或VB.NET编程转换Word文档为PDF
将Word文件编程转换为PDF格式可能面临挑战,尤其是在寻找开源或廉价解决方案时。本指南将引导您完成使用C#或VB.NET执行此转换的步骤。
方法一:迭代图像转换
此方法涉及将Word文档的每一页转换为图像,然后以PNG格式保存。
<code class="language-csharp">int j = 0; foreach (Microsoft.Office.Interop.Word.Page p in pane.Pages) { var bits = p.EnhMetaFileBits; var target = path1 + j.ToString() + "_image.doc"; try { using (var ms = new MemoryStream((byte[])(bits))) { var image = System.Drawing.Image.FromStream(ms); var pngTarget = Path.ChangeExtension(target, "png"); image.Save(pngTarget, System.Drawing.Imaging.ImageFormat.Png); } } catch (System.Exception ex) { MessageBox.Show(ex.Message); } j++; }</code>
方法二:使用Microsoft Word的“另存为”功能
如果您有权访问带有“另存为PDF”加载项的Microsoft Word,则可以以编程方式触发此过程。
<code class="language-csharp">// 创建新的Microsoft Word应用程序对象 Microsoft.Office.Interop.Word.Application word = new Microsoft.Office.Interop.Word.Application(); // C#没有可选参数,因此我们需要一个虚拟值 object oMissing = System.Reflection.Missing.Value; // 获取指定目录中Word文件的列表 DirectoryInfo dirInfo = new DirectoryInfo(@"\server\folder"); FileInfo[] wordFiles = dirInfo.GetFiles("*.doc"); foreach (FileInfo wordFile in wordFiles) { // 作为Object强制转换为word Open方法 Object filename = (Object)wordFile.FullName; // ... object outputFileName = wordFile.FullName.Replace(".doc", ".pdf"); object fileFormat = WdSaveFormat.wdFormatPDF; // 将文档保存为PDF格式 doc.SaveAs(ref outputFileName, ref fileFormat, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing); // ... }</code>
以上是如何使用c#或vb.net编程将Word文档编程转换为PDF?的详细内容。更多信息请关注PHP中文网其他相关文章!