CN113158628A - 一种改进word文档自动转pdf文档的新型方法 - Google Patents
一种改进word文档自动转pdf文档的新型方法 Download PDFInfo
- Publication number
- CN113158628A CN113158628A CN202110581752.1A CN202110581752A CN113158628A CN 113158628 A CN113158628 A CN 113158628A CN 202110581752 A CN202110581752 A CN 202110581752A CN 113158628 A CN113158628 A CN 113158628A
- Authority
- CN
- China
- Prior art keywords
- word
- path
- function
- document
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 29
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 17
- 230000008676 import Effects 0.000 claims abstract description 8
- 238000005516 engineering process Methods 0.000 description 6
- 230000007547 defect Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/149—Adaptation of the text data for streaming purposes, e.g. Efficient XML Interchange [EXI] format
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
本发明公开了一种改进WORD文档自动转PDF文档的新型方法,包括如下步骤:Import Win32com模块和Import Dispatch模块导入至Python程序,建立主函数并在主函数中命名word变量,使用函数打开word程序,在主函数中命名变量doc,调用函数进行读写,根据函数中的参数为word文件路径,并实行函数打开需要转换的word文档,调用函数执行打印word文档操作,Java调用Python程序,获取pdf文件;本申请利用Java程序调用Python打开Word程序调用Word打印机打印文档实现自动打印PDF,打印出来的Pdf基本和Word文档保持一致,不会出现格式不对,图片丢失等问题,有效解决转换成功率。
Description
技术领域
本发明属于技术领域,具体涉及一种改进WORD文档自动转PDF文档的新型方法。
背景技术
随着市场需求变化,日常工作中的使用的办公软件及文档管理大量的用到Word文档转换Pdf文档,这个时候就需要用工具来批量的将Word文档转换成Pdf文档,减少重复且繁杂的工作,提高工作效率。
为了解决这个问题,市场上就出现一些Word文档自动转Pdf文档的工具,比如:1、使用.NET技术调用Office接口来进行转换Pdf;2、使用Java POI技术进行Word文档转换Pdf文档;3、使用Java Page Office组件技术进行Word文档转换Pdf文档;等等,这些方法都可以进行Word文档转换Pdf文档。
目前市场上的背景技术包括:
方案一:.NET技术调用Office接口,
实现方法:通过Visual Studio开发工具使用.NET技术引用Office API,打开Word文档另存为Pdf文档,
缺陷:对Office环境的要求比较高,必须要求服务器上安装的Office版本和客户端安装的Office版本一致,由于客户端Office很难做到统一编辑的Word文档上传到服务器出现格式错乱;
方案二:Java POI技术做Word转换Pdf文档
实现方法:通过Java导入POI的jar包,调用XWPFDocument打开Word文档,然后调用函数PdfConverter.getInstance().convert();将Word文档转换成Pdf文档,
缺陷:无法满足相对复杂格式的Word文档,存在图片丢失问题等
方案三:Java Page Office组件技术
实现方法:先安装Page Office组件,Java引用Page Office组件,创建WordDocument对象,调用函数webOpen()打开Word文档,再调用函数WebSaveAsPDF()将Word文档转换成Pdf文档。
缺陷:只能在Windows操作系统安装,且无法满足复杂格式的word文档。
随着市场需求不断变化Word文档格式要求越来越高,一些企业定制化的Word文档格式复杂,传统的Word自动转换Pdf文档无法满足复杂格式需求,为此我们提出一种改进WORD文档自动转PDF文档的新型方法。
发明内容
本发明的目的在于提供一种改进WORD文档自动转PDF文档的新型方法,以解决上述背景技术中提出的问题。
为了实现上述目的,本发明采用了如下技术方案:一种改进WORD文档自动转PDF文档的新型方法,包括如下步骤:
A、Import Win32com模块和Import Dispatch模块导入至Python程序;
B、建立主函数并在主函数中命名word变量,使用函数打开word程序;
C、在主函数中命名变量doc,调用函数doc.Documents.Open(file_open_path)对进行读写,根据函数中的参数为word文件路径,并实行函数打开需要转换的word文档;
D、调用函数doc.PrintOut(OutputFileName=file_out_path),其中函数的参数为打印输出的Pdf文件路径,执行打印word文档操作;
E、Java调用Python程序,获取pdf文件。
进一步地,所述步骤E中,具体为Java代码通过执行cmd命令,调用python程序main()函数,执行word文档打印Pdf文档,Java程序等待python程序执行完成,拿到Pdf文件转换完成。
进一步地,函数为Runtime.exec(file_python_path,file_open_path,file_out_path),其中参数file_python_path为python程序路径,参数file_open_path为word文档路径,参数file_out_path为输出的Pdf文档路径。
进一步地,所述步骤C中函数参数file_open_path为word文件路径。
进一步地,所述步骤D中,函数参数file_out_path为打印输出的pdf文件路径。
相比于现有技术,本发明的有益效果在于:
本申请利用Java程序调用Python打开Word程序调用Word打印机打印文档实现自动打印PDF,打印出来的Pdf基本和Word文档保持一致,不会出现格式不对,图片丢失等问题,有效解决转换成功率,同时通过Python调用Word打印PDF的方法,具有功能开发简单,代码量少,简化重复繁杂工作的优点。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
图1为本发明的流程图;
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
在本发明的描述中,需要理解的是,术语“上”、“下”、“前”、“后”、“左”、“右”、“顶”、“底”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
参照图1,本发明提出的一种技术方案:
第一步、安装Java开发工具Idea和JDK1.8。
第二步、安装Python3.7.9和安装Office2016 64位。
第三步、设置虚拟打印机为Microsoft Print to Pdf,进入系统控制面板—>设备和打印机,找到Microsoft Print to PDF打印机,右键设置为默认打印机。
第四步、编写Python调用Word程序,传入word文件路径打开Word文档,在python程序编辑器导入模块import win32com和import Dispatch,写一个main()函数,在main()函数中命名word变量使用函数win32com.client.Dispatch('Word.Application')打开word程序,设置word程序不显示word.Visible=0和word.DisplayAlerts=0不弹窗提示;
在main()函数中命名变量doc,然后调用函数doc.Documents.Open(file_open_path),函数中的参数file_open_path为word文件路径,执行函数打开需要转换的word文档;
调用函数doc.PrintOut(OutputFileName=file_out_path),其中参数file_out_path为打印输出的Pdf文件路径,执行打印word文档操作。
第五步、Java调用python程序,或取Pdf文件,具体为Java代码通过执行cmd命令,函数为Runtime.exec(file_python_path,file_open_path,file_out_path),其中参数file_python_path为python程序路径,参数file_open_path为word文档路径,参数file_out_path为输出的Pdf文档路径,调用python程序main()函数,执行word文档打印Pdf文档,Java程序等待python程序执行完成,拿到Pdf文件转换完成。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
Claims (5)
1.一种改进WORD文档自动转PDF文档的新型方法,其特征在于,包括如下步骤:
A、Import Win32com模块和Import Dispatch模块导入至Python程序;
B、建立主函数并在主函数中命名word变量,使用函数打开word程序;
C、在主函数中命名变量doc,调用函数doc.Documents.Open(file_open_path)对进行读写,根据函数中的参数为word文件路径,并实行函数打开需要转换的word文档;
D、调用函数doc.PrintOut(OutputFileName=file_out_path),其中函数的参数为打印输出的Pdf文件路径,执行打印word文档操作;
E、Java调用Python程序,获取pdf文件。
2.根据权利要求1所述的一种改进WORD文档自动转PDF文档的新型方法,其特征在于:所述步骤E中,具体为Java代码通过执行cmd命令,调用python程序main()函数,执行word文档打印Pdf文档,Java程序等待python程序执行完成,拿到Pdf文件转换完成。
3.根据权利要求2所述的一种改进WORD文档自动转PDF文档的新型方法,其特征在于:函数为Runtime.exec(file_python_path,file_open_path,file_out_path),其中参数file_python_path为python程序路径,参数file_open_path为word文档路径,参数file_out_path为输出的Pdf文档路径。
4.根据权利要求1所述的一种改进WORD文档自动转PDF文档的新型方法,其特征在于:所述步骤C中函数参数file_open_path为word文件路径。
5.根据权利要求1所述的一种改进WORD文档自动转PDF文档的新型方法,其特征在于:所述步骤D中,函数参数file_out_path为打印输出的pdf文件路径。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110581752.1A CN113158628A (zh) | 2021-05-24 | 2021-05-24 | 一种改进word文档自动转pdf文档的新型方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110581752.1A CN113158628A (zh) | 2021-05-24 | 2021-05-24 | 一种改进word文档自动转pdf文档的新型方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113158628A true CN113158628A (zh) | 2021-07-23 |
Family
ID=76877717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110581752.1A Pending CN113158628A (zh) | 2021-05-24 | 2021-05-24 | 一种改进word文档自动转pdf文档的新型方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113158628A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020033838A1 (en) * | 2000-05-15 | 2002-03-21 | Scott Krueger | Method and system for seamless integration of preprocessing and postprocessing functions with an existing application program |
CN101706772A (zh) * | 2009-12-14 | 2010-05-12 | 中国移动通信集团山西有限公司 | Word文档的操作方法及装置 |
US20100257443A1 (en) * | 2007-12-10 | 2010-10-07 | E-Glue Software Technologies Ltd. | System and Process for Producing a Two-Layer Document, and a Two-Layer Document Produced Accordingly |
CN111596872A (zh) * | 2020-05-25 | 2020-08-28 | 上海泛微网络科技股份有限公司 | 数据打印方法及数据打印装置 |
-
2021
- 2021-05-24 CN CN202110581752.1A patent/CN113158628A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020033838A1 (en) * | 2000-05-15 | 2002-03-21 | Scott Krueger | Method and system for seamless integration of preprocessing and postprocessing functions with an existing application program |
US20100257443A1 (en) * | 2007-12-10 | 2010-10-07 | E-Glue Software Technologies Ltd. | System and Process for Producing a Two-Layer Document, and a Two-Layer Document Produced Accordingly |
CN101706772A (zh) * | 2009-12-14 | 2010-05-12 | 中国移动通信集团山西有限公司 | Word文档的操作方法及装置 |
CN111596872A (zh) * | 2020-05-25 | 2020-08-28 | 上海泛微网络科技股份有限公司 | 数据打印方法及数据打印装置 |
Non-Patent Citations (2)
Title |
---|
张连姣: "基于Acrobat Professional 7.0 实现Word 与PDF 格式互换的技巧", 《电脑学习》, no. 2, pages 61 - 62 * |
苟博文;: "基于C#语言实现word文档转pdf文档", 电脑知识与技术, no. 35 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101567065B (zh) | 跨平台的文档在线编辑系统及其方法 | |
US7689709B2 (en) | Native format tunneling | |
CN102004790A (zh) | 一种高吞吐量数据报表导出的方法 | |
US9557880B2 (en) | Shared user interface services framework | |
WO2020186680A1 (zh) | 一种建模平台接口测试方法 | |
WO2020093730A1 (zh) | 定制寄件方法、装置、系统及存储介质 | |
CN110187916B (zh) | 基于数据配置生成Word文档的方法 | |
KR20170105054A (ko) | 임베디드 시스템의 프리인스톨 중의 스크립트 작업 수행 시스템 | |
CN107450993A (zh) | 一种分布式iec61850通信组件的数据交互方法 | |
CN111460017A (zh) | 文档数据导入方法、文档数据导出方法、装置和存储介质 | |
CN113821565B (zh) | 一种多数据源同步数据的方法 | |
CN110780971A (zh) | 一种可视化的医疗数据映射、转换工具的实现方法及系统 | |
CN107292136A (zh) | 一种基于微服务的pdf文件防伪水印嵌入方法及系统 | |
CN101227323A (zh) | 实现界面配置和命令行配置同步操作数据的方法及系统 | |
CN113158628A (zh) | 一种改进word文档自动转pdf文档的新型方法 | |
CN108773205A (zh) | 智能打印装置及智能打印控制方法 | |
CN112269671B (zh) | 一种在网页中使用Office编程接口的方法 | |
CN114911466B (zh) | 一种采集端数据质量控制系统 | |
CN102012821A (zh) | 一种二次开发适配方法 | |
CN108062223A (zh) | 一种Simulink模型之间建立连接关系的方法及装置 | |
CN111782194A (zh) | 一种基于航空嵌入式开放体系架构的可移植单元代码自动生成方法 | |
CN110515993B (zh) | 税务数据转换方法及系统 | |
CN113590116A (zh) | 一种在OA系统中基于BS模式非嵌入式使用Office的方法 | |
WO2021000488A1 (zh) | 数据自动导入方法、装置及计算机可读存储介质 | |
CN106897256B (zh) | 一种将Office软件编辑的公式转换成MathML公式的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |