自动将word转成双层pdf

一、问题情况

随着无纸化办公的要求,目前在不少公司的投标、项目验收的文档均要求将word文件转成双层pdf进行存档。双层PDF有哪些特点?

1、文档不能被修改;

2、文档放大后字迹模糊,如

 正常非双层PDF放大效果(比较光滑、清晰),如下:

 3、文档可以被搜索、复制、粘贴。

因此如何制作双层pdf?

二、工具

一般常用的是adobe公司产品acrobat可以直接制作。目前网络上可以下载Adobe Acrobat 9(免费/破解版),或者最新的Adobe Acrobat DC(收费的,也可以在淘宝上米一个便宜的^_^)

三、制作步骤(以Adobe Acrobat 9 pro为例)

3.1 将WORD格式转换为可编辑的单层PDF格式

3.1.1 编辑保存好需要转换的投标文件WORD文档,点击office按钮,将鼠标放在另存为按钮上,选择adobe PDF

3.1.2 选择PDF文件保存路径及名称,点击保存即可

 3.2 将PDF格式文件导出转换为图片格式

3.2.1 打开PDF编辑软件Adobe Acrobat 9 Pro,打开需要转换的PDF文件,点击文档-导出-图像-TIFF

 3.2.2 点击设置-分辨率选择一个,这里比如59.06,点击确定

3.2.3  选择转换后图片的存储位置(放在一个文件夹内)

3.3  将所有图片重新组合成图片格式的PDF

3.3.1 选中所有图片,单击右键-在acrobat中合并支持的文件

 3.3.2 点击合并文件

3.3.3  给合并后文件命名并选择保存位置,点击保存,保存后文档自动在acrobat中打开

 3.4 对图片格式的PDF进行OCR识别

3.4.1 将刚合并后的文件打开,点击文档-OCR文本识别-使用OCR识别文本

 3.4.2 点击编辑-设置识别语言及采样像素(对图像缩减像素采样选择,比如选择(600dpi)),点击确定。

3.4.3 点击上述后,文档将会自动进行识别,识别完成后的文档保存或另存为即可 。

3.5  书签目录的制作

 上面图片合并OCR识别的文件默认是木有书签目录的,如何添加书签目录?一种方法是手动添加,这个比较耗时。如下

第二种方法是单层pdf进行替换,正常word导出单层pdf后是默认带有书签目录的,因此,将单层pdf打开后,执行替换页面操作,将页面全部替换成图片合并OCR识别后的文件。

四、自动将word转成双层pdf文件

以上的方法是手动来完成双层pdf的制作,重复性机械动作比较多,如果是偶尔一两个文档操作下来还可以,但如果是经常性操作、文档很多的话,就苦逼了,只能眼睛盯着电脑,很耗时间,浪费精力,效率也低。因此对专职或要处理很多文档的网友,这里推荐使用自动批量处理工具【文档小助手】,下载地址:http://www.booleanda.cc

参考效果如下:

将单层的PDF换为双层PDF需要对PDF文件进行重新排版。下面是一个简单的Java代码示例,可以将单层的PDF换为双层PDF。 ```java import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import com.itextpdf.text.Document; import com.itextpdf.text.DocumentException; import com.itextpdf.text.PageSize; import com.itextpdf.text.Rectangle; import com.itextpdf.text.pdf.PdfCopy; import com.itextpdf.text.pdf.PdfImportedPage; import com.itextpdf.text.pdf.PdfReader; public class ConvertSinglePageToDoublePage { public static void main(String[] args) throws IOException, DocumentException { // 原始单层PDF文件路径 String inputFile = "singlepage.pdf"; // 换为双层PDF文件路径 String outputFile = "doublepage.pdf"; // 创建一个新的文档对象 Document document = new Document(PageSize.A4, 0, 0, 0, 0); // 创建PdfCopy对象 PdfCopy copy = new PdfCopy(document, new FileOutputStream(outputFile)); // 打开单层PDF文件 PdfReader reader = new PdfReader(inputFile); // 获取单层PDF文件的页数 int n = reader.getNumberOfPages(); // 计算双层PDF文件的页数 int m = n / 2 + (n % 2 == 0 ? 0 : 1); // 循环处理每一页 for (int i = 1; i <= m; i++) { // 创建一个新的页面对象 document.newPage(); // 获取当前页的左侧页面 PdfImportedPage leftPage = copy.getImportedPage(reader, 2 * i - 2); // 获取当前页的右侧页面,如果当前页是单数,则使用空白页面填充 PdfImportedPage rightPage = (2 * i - 1 <= n) ? copy.getImportedPage(reader, 2 * i - 1) : copy.getImportedPage(new PdfReader(new byte[0]), 1); // 将左侧页面添加到PDF文件中 copy.addPage(leftPage); // 将右侧页面添加到PDF文件中 copy.addPage(rightPage); } // 关闭文档 document.close(); // 关闭输入流 reader.close(); } } ``` 请注意,此示例代码使用了iTextPDF库,您需要将其添加到您的项目中。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

shaochuan_2008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值