???利用office自带的COM类型库组件实现转换Pdf功能。只要安装了office的服务器上都可以调用,不需要额外的第三方组件,功能也更加丰富和强大,几乎可以不受限制的操作office所有类型文件。缺点是部署问题多,发布到客户服务器进行调试的话问题很多。禁忌:1,开发的时候调用,不同office版本的COM组件,比如Microsoft.Office.Interop.Word是v14,那ppt、excel等组件都要统一版本,不然问题很多;2,部署的服务器上只能安装一个版本的office,比如开发时调用的Office2010,那部署的服务器就只能装office2010,建议不要混装各种版本来匹配组件型号,最终会导致哪个都不能用;3,常见的故障问题和解决方法附录在该节末尾。
(1)利用Microsoft.Office.Interop.Word实现word转换pdf.
首先安装office2010或其他更高版本。
添加引用Microsoft.Office.Interop.Word:
usingMicrosoft.Office.Interop.Word;
usingWdExportFormat=Microsoft.Office.Interop.Word.WdExportFormat;
///把Word文件转换成pdf文件
///<paramname="sourcePath">需要转换的文件路径和文件名称</param>
///<paramname="targetPath">转换完成后的文件的路径和文件名名称</param>
///<returns>成功返回true,失败返回false</returns>
publicstaticboolWordToPdf(stringsourcePath,stringtargetPath)
Microsoft.Office.Interop.Word.WdExportFormatwdExportFormatPDF=Microsoft.Office.Interop.Word.WdExportFormat.wdExportFormatPDF;//转换格式1.wdExportFormatPDF转换成pdf格式2.wdExportFormatXPS转换成xps格式
objectmissing=Type.Missing;
Microsoft.Office.Interop.Word.ApplicationClassapplicationClass=null;
applicationClass=newMicrosoft.Office.Interop.Word.ApplicationClass();
objectinputfileName=sourcePath;//需要转格式的文件路径
stringoutputFileName=targetPath;//转换完成后PDF或XPS文件的路径和文件名名称
WdExportFormatexportFormat=wdExportFormatPDF;//导出文件所使用的格式

WdExportOptimizeForwdExportOptimizeForPrint=WdExportOptimizeFor.wdExportOptimizeForPrint;//导出方式1.wdExportOptimizeForPrint针对打印进行导出,质量较高,生成的文件大小较大。2.wdExportOptimizeForOnScreen针对屏幕显示进行导出,质量较差,生成的文件大小较小。
WdExportRangewdExportAllDocument=WdExportRange.wdExportAllDocument;//导出全部内容(枚举)
WdExportItemwdExportDocumentContent=WdExportItem.wdExportDocumentContent;//指定导出过程中是否只包含文本或包含文本的标记.1.wdExportDocumentContent:导出文件没有标记,2.导出文件有标记
boolincludeDocProps=true;//指定是否包含新导出的文件在文档属性
WdExportCreateBookmarkswdExportCreateWordBookmarks=WdExportCreateBookmarks.wdExportCreateWordBookmarks;//1.wdExportCreateNoBookmarks:不要在导出文件中创建书签,2.wdExportCreateHeadingBookmarks:标题和文本框导出的文件中创建一个书签,3.wdExportCreateWordBookmarks每个字的书签,其中包括除包含页眉和页脚中的所有书签导出的文件中创建一个书签。
booldocStructureTags=true;
boolbitmapMissingFonts=true;
boolUseISO19005_1=false;//生成的文档是否符合ISO19005-1(PDF/A)
document=applicationClass.Documents.Open(refinputfileName,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing);
document.ExportAsFixedFormat(outputFileName,exportFormat,openAfterExport,wdExportOptimizeForPrint,wdExportAllDocument,from,to,wdExportDocumentContent,includeDocProps,keepIRM,wdExportCreateWordBookmarks,docStructureTags,bitmapMissingFonts,UseISO19005_1,refmissing);
document.Close(refmissing,refmissing,refmissing);
if(applicationClass!=null)
applicationClass.Quit(refmissing,refmissing,refmissing);
CommonCls.ConvertPdf.WordToPdf(sourcefilepath,targetfilepath);
(2)利用Microsoft.Office.Interop.PowerPoint实现ppt转换pdf.
首先安装office2010或其他更高版本。
添加引用Microsoft.Office.Interop.PowerPoint:
(3)利用Microsoft.Office.Interop.*组件实现转换pdf的常见问题和解决方法。
调试正常,发布到部署服务器时无法转换
本文来源:国外服务器--wordppt怎么转换成pdf(ppt怎么转换成pdf)
本文地址:https://www.idcbaba.com/guowai/2680.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



