前段时间做一个项目中用到了文件转换,可惜效率不是怎么高。

本人才疏学浅,写不来好文章,只能做一点简单的笔录(哭~~~~,“我这人可笨可笨了。”)。

本文不写代码,实在不好意思贴出来,不仅是我,相信国内没有这样的牛能写出高水平的打印程序来【我同你一样,期待牛的出现】。看看街上卖的高低端打印机牌子就知道了,几乎清一色日产,就算国产的,芯片技术还是很落后的,国产化的路还是任重道远啊,所以实在不好意思,我不是牛,只能google,悲哀呼?

最近又将该文档转换进行了简单优化,是要将一般性文档(以office文档为例)最终转为pdf文档。其中是非曲折很难想想。现将本人实际使用过程中用到的几种转换方法介绍如下:

一、直接用OFFICE的另存功能

OFFICE工具发展到现在,无论是MS OFFICE、Open Office、WPS OFFICE目前都提供了保存为PDF格式的方法。这些方法都经过了文档打开,校验文档,转换文档的过程。

1.C#+MS OFFICE另存方式

这一种方式是用目前最新的OFFICE2007,需要安装插件包SaveAsPDFandXPS.exe的,

语句我就不写了,随便转载一下,帮人打打广告也好,别怨我哦(嘿嘿)。

http://www.kuqin.com/office/20080504/7814.html

2.JAVA+MS OFFICE另存的方式肯定也可以实现的,可以利用以下jacob,jni关键词哟。

3.JAVA+OpenOffice方式也行的

二、间接转换(通过打印方式)

这是本文的重点,也许很多人认为直接转换效率肯定会很高,其实未必,经过我测试的1万页word(*.doc)纯文本文档,第一种方式需要很久很久的。至少要30分钟吧,JAVA+OpenOffice居然达到2小时之久,当然还是要以实测数据为准,另外强烈批评一下OpenOffice,就算直接打开转换一个PPT文档中居然出现了一部分乱码,该乱码是跟文本有关的,而不是字体关系。其他方式都正常。

目前打印虚拟机有很多种类的,不信你可以测试并比较一下这些虚拟打印机的性能。

至于生成文档大小当然跟设置有关,有些没有设置压缩的选项的虚拟机直接就可以过滤掉,不能进行二次开发的也过滤掉,目前我经过筛选用到的虚拟打印机效率比较高的是cutepdf(收费),pdffactory(及FinePrint收费)、smartprinter(收费)、flashpaper(收费),最后来个免费的PDFCreator吧。

简单比较了一下,不能到底确定哪个好,因为这个需要大量的文档进行测试的。

cutepdf效率挺高的,那个1万页用了4分多钟,而有名气的pdffactory和smartprinter很消耗时间,难道跟用破解有关?flashpaper和pdfCreator时间差不多,顺便说一下,flashpaper不仅收费,而且所支持的打印为swf文件由于目前是承载在AVM1虚拟机上的,当时造成了转换后的flash文档打不开。

PDFCreator还有附带源码在安装目录下的。

既然如此,还等什么呢?为什么不用免费的呢?当然要用了,直接更改来用是可以的。

PDFCreator要用好得控制好输出和线程,因为它是VB整合POSTSCRIPT+GHOSTSCRIPT的。由于别人开发了,何必再做一次呢,相信打印到ps文件那一步不能再优化到多少了。

注意哟,这个PDFCreator必须使用单线程方式排队打印,反应快了,肯定会在队列中等待很多文件的,而且这些文件一旦重启打印,很多都不能得到正常的结果的。所以必须控制一次打印一个,哪怕是多线程也得加个锁吧。

我是新同学,臆测一下,打印的速度比直接转换的快,很有可能是技术上更成熟,能打印出来的文档基本上都是可以打印成ps的,这个ps文档的标准虽然占用很大的临时空间,但从效率上来说确实很高的,无论是打印还是直接保存都需要将文档打开,文档一旦很大,就要消耗过多的CPU时间,这也是造成文档转换效率不高的原因。

OFFICE文档转换到PDF的几种方法与转换效率和性能的简单比较相关推荐

  1. word转图片 java_Java 利用LibreOffice将Office文档转换成 PDF,进而转图片,实现在线预览功能...

    项目中需要将 Office 文档上传并实现在线预览,用到了 LibreOffice 将 Office 文档转换为 PDF 文档,然后再用 pdfbox 将 PDF 转为图片. 本文介绍借助 Libre ...

  2. Office文档转换成PDF

    分享知识 传递快乐 Office文档转换成PDF 文档转换的方式有很多种,比如有Apache下的POI.jodconverter等技术.本例用的jodconverter-core-3.0技术对文档进行 ...

  3. Office文档转换成PDF文档

    本方案是我在网络上收集前人智慧,以及辛苦奋斗探索几周完成的成果. 本文从一个只会Java零基础的开发者的角度,全面.琐碎的进行总结. 具体方案: 方案一.使用OpenOffice.org的系统服务+j ...

  4. java将office文档,word,ppt,pdf文档转换成swf文件在线预览

    java将office文档pdf文档转换成swf文件在线预览 第一步,安装openoffice.org openoffice.org是一套sun的开源office办公套件,能在widows,linux ...

  5. 文档格式转换(Office文档转成PDF或XPS)

    最近在做微信云打印服务器,云服务器与微信云服务器通信己经OK,现在有一个很核心的功能需要实现,就是服务器端文档的格式转换 目标:将office.txt.图片格式的文档转成PDF 查阅了一些资料,格式转 ...

  6. [Office 2010 易宝典]怎样直接将Office文档保存为PDF格式?

    大致内容 如何将Office文档保存问PDF格式: 通过菜单点击的方式把Microsoft Word文档另存为PDF文档. 操作步骤 1.点击"文件"菜单. 2.点击"另 ...

  7. WORD文档转换成PDF格式

    由于一个客户的项目中需要将WORD文档转换成PDF格式,实战教程如下: 需求分析:客户的项目以B/S结构为主,提供一个WORD文件在后台自动转换成PDF,经过实际 测试, 如果该篇WORD文档有100 ...

  8. 怎么把word文档转换成PDF?

    Word文件完成编辑之后,想要转发给他人,但是担心在转发过程中出现了格式错乱的情况,将word文档转换成PDF格式再转发就可以避免类似情况了.那么如何将word文档转换成PDF文件? 方法一: 在编辑 ...

  9. 在js中加html_在HTML文档中嵌入JavaScript的四种方法

    在HTML里嵌入JavaScript 在HTML文档里嵌入客户端JavaScript代码有4中方法: 1.内嵌,放置在标签之间  (少): 2.放置在有 3.放置自HTML事件处理程序中,该事件处理程 ...

  10. XDOC Office Server 开源了,Office文档完美转换为PDF

    百度智能云 云生态狂欢季 热门云产品1折起>>>   项目地址:https://gitee.com/xdoc/xoffice XDOC是一个文档自动化平台,提供免费的Office文档 ...

最新文章

  1. PHP 单例模式继承的实现方式
  2. 高斯拟合原理_AlexNet原理和实现
  3. oracle数据库的医院信息系统数据库升级方案,医院信息系统数据库从Oracle8i到10gR2升级的实现...
  4. MySQL基础原创笔记(一)
  5. Delphi XE5教程4:程序和单元概述
  6. c语言开发破解pdf软件,ARM处理器与C语言开发应用(第2版) PDF
  7. Excel2010学习笔记(二):公式函数篇
  8. Ubuntu 14.04/16.04 (使用apt-get进行安装) 安装Docker
  9. C++之找不到libboost_system.so.1.76库解决
  10. python的menu_Python Tkinter Menu使用教程 | 學步園
  11. error: exception handling disabled, use -fexceptions to enable
  12. 【BZOJ3894】文理分科(最小割)
  13. 【笔记分享】LED点阵屏幕显示原理
  14. TCL语言语法简介(上)
  15. 振兴会杜振国分析美股行情
  16. 关于app申请软件著作权登记时软件名称命名的问题
  17. windows平台上实现websocket服务器
  18. 二进制安装Kubernetes(k8s) v1.25.0 IPv4/IPv6双栈
  19. 地震勘探原理(六)之地震组合方法原理
  20. 1812. 方形牧场

热门文章

  1. 【天线的主要技术指标及其含义-带宽 】
  2. Java NIO、BIO介绍
  3. matlab矩阵处理实验报告,MATLAB矩阵实验报告.doc
  4. 公司合同管理软件有哪些?
  5. 启用IIS7配置ASP运行环境的详细方法
  6. 【树莓派】安装C#运行环境
  7. 光纤通信(邱昆、王晟版)课后答案
  8. TDA4 制作 SD卡驱动
  9. 怎样python爬虫更换ip地址爬取网站
  10. Blender - 武器icon贴图渲染 阴影角度