ASP.NET 调用COM Word 转Pdf 之我见

2024-04-17 01:38
文章标签 调用 pdf asp net com word 之我见

本文主要是介绍ASP.NET 调用COM Word 转Pdf 之我见,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

做项目中用到word转pdf 的功能 ,刚开始的要求是做一个应用程序来转 主要代码如下:
using  PDF  =  PDFMAKERAPILib;
    string  wordPath  =   string .Empty;
        
string  pdfPath  =   string .Empty;

        PDF.PDFMakerApp app 
=   new  PDFMAKERAPILib.PDFMakerApp();
       
int  iReslut =  app.CreatePDF(wordPath, pdfPath, PDF.PDFMakerSettings.kConvertAllPages,  true false true , System.Type.Missing);
       
if  (iReslut  ==   0 )
       
{
           
this.lblInfo.Text = "转换成功!";
       }

       
else
       
{
           
//转换失败!
           this.lblInfo.Text = Enum.GetName(typeof(PDF.PDFMakerRetVals), iReslut);
       }

后来要求改变 必须用ASP.NET 来调用 心想,代码复制到Web窗体里面不就行了吗?
在用WebDev.WebServer.exe 时候 OK,没问题,当用IIS时,就是转换不成功,花了点时间,发现原因是两个的用户不同,一个是管理员,一个是Asp.net 帐户或者是network Service 看IIS是5.0 还是6.0。想通过更改设置权限来解决,改了不少,效果是从一个错误,变成了另一个错误!
后来从网上查资料,受了点启发:(我做COM测试的时候喜欢用VB.NET  代码简练。)

Imports  Word  =  Microsoft.Office.Interop.Word
Imports  PDF  =  ACRODISTXLib
   Dim  Range  As   New   Object ()
        Range 
=  Word.WdPrintOutRange.wdPrintAllDocument
        
Dim  Item  As   New   Object ()
        Item 
=  Word.WdPrintOutItem.wdPrintDocumentContent
        
Dim  PageType  As   New   Object ()
        PageType 
=  Word.WdPrintOutPages.wdPrintAllPages
        
Dim  ManualDuplexPrint  As   New   Object ()
        ManualDuplexPrint 
=   False
        
Dim  OutPutFileName  As   String   =   " C:/Topdf/123456.ps "

        
Dim  wordApp  As   New  Word.Application()
        wordApp.Documents.Open(
" C:/Topdf/123456.doc " False False False "" "" False "" "" , Word.WdOpenFormat.wdOpenFormatAuto, , , , , ,  "" )
        wordApp.Documents.Save()

        wordApp.ActivePrinter 
=   " Adobe PDF "
      
        wordApp.PrintOut(
False , , Range, OutPutFileName, , , Item,  1 "" , PageType,  False True "" , ,  False 0 0 0 0 )

        wordApp.Quit()

      

        
Dim  pdftest  =   New  PDF.PdfDistiller()
        pdftest.bShowWindow 
=   0

        pdftest.FileToPDF(OutPutFileName, 
" C:/Topdf/123456.pdf " "" )
        pdftest 
=   Nothing
        
' '连续调用会出错,可以先杀掉进程 

思路是先用Word 将doc 转换为ps,然后用pdfDistiller 将ps转换为pdf,经过测试,可以在IIS下成功执行。
在此将代码写出来,希望碰到此类问题的,能够少走些弯路!
当然,最好是不调COM,方法是找到了,就是要花钱,先这样用着吧!

 

这篇关于ASP.NET 调用COM Word 转Pdf 之我见的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/910469

相关文章

使用Python实现在Word中添加或删除超链接

《使用Python实现在Word中添加或删除超链接》在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能,本文将为大家介绍一下Python如何实现在Word中添加或... 在Word文档中,超链接是一种将文本或图像连接到其他文档、网页或同一文档中不同部分的功能。通过添加超

python实现pdf转word和excel的示例代码

《python实现pdf转word和excel的示例代码》本文主要介绍了python实现pdf转word和excel的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录一、引言二、python编程1,PDF转Word2,PDF转Excel三、前端页面效果展示总结一

基于C#实现PDF文件合并工具

《基于C#实现PDF文件合并工具》这篇文章主要为大家详细介绍了如何基于C#实现一个简单的PDF文件合并工具,文中的示例代码简洁易懂,有需要的小伙伴可以跟随小编一起学习一下... 界面主要用于发票PDF文件的合并。经常出差要报销的很有用。代码using System;using System.Col

Java操作PDF文件实现签订电子合同详细教程

《Java操作PDF文件实现签订电子合同详细教程》:本文主要介绍如何在PDF中加入电子签章与电子签名的过程,包括编写Word文件、生成PDF、为PDF格式做表单、为表单赋值、生成文档以及上传到OB... 目录前言:先看效果:1.编写word文件1.2然后生成PDF格式进行保存1.3我这里是将文件保存到本地后

通过C#获取PDF中指定文本或所有文本的字体信息

《通过C#获取PDF中指定文本或所有文本的字体信息》在设计和出版行业中,字体的选择和使用对最终作品的质量有着重要影响,然而,有时我们可能会遇到包含未知字体的PDF文件,这使得我们无法准确地复制或修改文... 目录引言C# 获取PDF中指定文本的字体信息C# 获取PDF文档中用到的所有字体信息引言在设计和出

Idea调用WebService的关键步骤和注意事项

《Idea调用WebService的关键步骤和注意事项》:本文主要介绍如何在Idea中调用WebService,包括理解WebService的基本概念、获取WSDL文件、阅读和理解WSDL文件、选... 目录前言一、理解WebService的基本概念二、获取WSDL文件三、阅读和理解WSDL文件四、选择对接

基于Java实现模板填充Word

《基于Java实现模板填充Word》这篇文章主要为大家详细介绍了如何用Java实现按产品经理提供的Word模板填充数据,并以word或pdf形式导出,有需要的小伙伴可以参考一下... Java实现按模板填充wor编程d本文讲解的需求是:我们需要把数据库中的某些数据按照 产品经理提供的 word模板,把数据

SpringBoot生成和操作PDF的代码详解

《SpringBoot生成和操作PDF的代码详解》本文主要介绍了在SpringBoot项目下,通过代码和操作步骤,详细的介绍了如何操作PDF,希望可以帮助到准备通过JAVA操作PDF的你,项目框架用的... 目录本文简介PDF文件简介代码实现PDF操作基于PDF模板生成,并下载完全基于代码生成,并保存合并P

Java调用Python代码的几种方法小结

《Java调用Python代码的几种方法小结》Python语言有丰富的系统管理、数据处理、统计类软件包,因此从java应用中调用Python代码的需求很常见、实用,本文介绍几种方法从java调用Pyt... 目录引言Java core使用ProcessBuilder使用Java脚本引擎总结引言python

基于Python实现PDF动画翻页效果的阅读器

《基于Python实现PDF动画翻页效果的阅读器》在这篇博客中,我们将深入分析一个基于wxPython实现的PDF阅读器程序,该程序支持加载PDF文件并显示页面内容,同时支持页面切换动画效果,文中有详... 目录全部代码代码结构初始化 UI 界面加载 PDF 文件显示 PDF 页面页面切换动画运行效果总结主