【转】pdf文件自动切白边
pdf文件自动剪裁(自动切白边)
FROM:http://www.ai7.org/wp/html/754.html
下面假设原文件(也就是打算切白边的文件)叫abc.pdf
- pdfcrop abc.pdf,默认会生成abc-crop.pdf文件,这个已经是切掉白边的了,要是你不嫌它大(或者它确实不大)的话,就完成了。
- 用阅读器(如evince)打开abc-crop.pdf,并通过CUPS打印到文件,打印时注意关闭所有和页面缩放有关的命令,并选中“使用文档的页面尺寸作为页面尺寸”。打印,完成。
说明:
- pdfcrop其实是TeXLive自带的。本质上是一个perl脚本。
- pdfcrop要调用gs(ghostscript)确定每页的白边大小。对于空白页,会报错,忽略即可。
- pdfcrop还可以在切的时候留若干像素,具体请–help。
- pdfcrop要调用pdftex以生成切白边后的文件。
- pdfcrop本质上(猜想,没有阅读源码)是先将abc.pdf展开成单页的pdf,调用gs切白边,再用tex文件直接调用pdf页面,最后用pdftex生成输出。
- pdfcrop直接生成的文件一般是原文件的20倍以上(本人测试的几个文件均是如此),虚拟打印到新的文件后,基本可以恢复到与原文件同样数量级的尺寸。
- 测试都是使用的内嵌字体的中英文PDF。扫描版的没试,估计够呛。
附一个类似的eps版工具
首先用下面的命令来去除白边。因为是程序来做的,去除白边的效果甚至比人自己做好:
epstool --copy --bbox input_file.eps input_file_temp.eps
第二步也是最后一步,将eps图像转成pdf,也只需要一行命令
epstopdf --hires --outfile=output.pdf input_file_temp.eps
这样就完成了eps到pdf的转换了。
上述的操作流程可以写成一个脚本
epstool --copy --bbox $1 my_epstopdf_temp.eps
epstopdf --hires --outfile=$2 my_epstopdf_temp.eps
rm my_epstopdf_temp.eps
【转】pdf文件自动切白边的更多相关文章
- 【转】Python编程: 多个PDF文件合并以及网页上自动下载PDF文件
1. 多个PDF文件合并1.1 需求描述有时候,我们下载了多个PDF文件, 但希望能把它们合并成一个PDF文件.例如:你下载的数个PDF文件资料或者电子发票,你可以使用python程序合并成一个PDF ...
- PDF文件添加二维码水印教程
maven配置iText的jar,主要不是所有私服都有iText的jar,maven仓库没有的,可以去https://mvnrepository.com/artifact/com.itextpdf/i ...
- php+tcpdf如何把生成的pdf文件保存在服务端
tcpdf组件目前应用得非常广泛,但是对于如何把生成的pdf文件自动保存在服务端却很少有人提及.让我们先来看看标准输出代码: //服务器存档模式 $pdf->Output('output.p ...
- 将HTML页面自动保存为PDF文件并上传的两种方式(一)-前端(react)方式
一.业务场景 公司的样本检测报告以React页面的形式生成,已调整为A4大小的样式并已实现分页,业务上需要将这个网页生成PDF文件,并上传到服务器,后续会将这个文件发送给客户(这里不考虑). 二.原来 ...
- IE浏览器不能自动显示PDF文件的解决办法
今天更新了Adobe的PDF Reader,更新后发现在网页上无法预览PDF文件了,点击PDF的连接,浏览器就会提示下载或者打开,感觉很不爽,经过一番百度,找到了解决办法,在这里分享一下. 打开IE浏 ...
- 用C#制作PDF文件全攻略
用C#制作PDF文件全攻略 目 录 前 言... 3 第一部分 iText的简单应用... 4 第一章 创建一个Document 4 第一步 创建一个Document实例:... 5 第二步 ...
- 页面直接导出为PDF文件,支持分页与页边距
将WEB页面直接导出为pdf文件是经常会用到的一个功能,尤其是各种报表系统.总结了一下目前几种主流的做法: 在后端用代码生成pdf文件,比如iText一类: 在后端抓取页面并生成pdf文件,比如pha ...
- 实战动态PDF在线预览及带签名的PDF文件转换
开篇语: 最近工作需要做一个借款合同,公司以前的合同都是通过app端下载,然后通过本地打开pdf文件,而喜欢创新的我,心想着为什么不能在线H5预览,正是这个想法,说干就干,实践过程总是艰难的,折腾了3 ...
- 前端工程师技能之photoshop巧用系列扩展篇——自动切图
× 目录 [1]初始设置 [2]自动切图 前面的话 随着photoshop版本的不断升级,软件本身增加了很多新的功能,也为切图工作增加了很多的便利.photoshop最新的版本新增了自动切图功能,本文 ...
随机推荐
- UI系统的三个主要关系
1.UI的结构.组织和组件.布局.渲染效率:(系统内置的组件有哪些?) 2.UI与事件的关系: 3.UI与数据的关系:
- type of的返回值有哪些
typeof 10; // number typeof 'time'; //string typeof undefined; // undefined typeof null; // object t ...
- 何时使用 django 以及何时不用?
选择一种语言和框架,因为你在上一个项目中使用了它或者因为你更熟悉它,但是这不是正确的方法. 项目启动 在开始一个新的软件项目之前,您需要评估哪种语言和框架最适合您所期望的结果.什么对你最重要?安全性. ...
- JavaScript map reduce
23333333333333 map var s = []; for(let i=0;i<10;i++){ s.push(i); } function pow(x){ return x*x; } ...
- Linux禁止ping和开启ping的方法
Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A.内核参数,B.防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping. 一.通过修改 ...
- python 启动pydoc查看文档
启动pydoc查看文档 python3 -m pydoc -p 访问http://localhost:6789 或者查看官方文档:https://seleniumhq.github.io/seleni ...
- python pycryptodome 加密解密
pip3 install pycryptodome my_private_rsa_key.bin -----BEGIN RSA PRIVATE KEY----- MIICXQIBAAKBgQDlOJu ...
- javaweb利用filter拦截未授权请求
项目上有个小需求,要限制访问者的IP,屏蔽未授权的请求.该场景使用过滤器来做再合适不过了. SecurityFilter.java: public class SecurityFilter imple ...
- linux操作系统与jvm
线程调度 https://www.cnblogs.com/xiaotlili/p/3510224.html
- Java之创建文件并写入数据
应用场景:以OJ项目为例,创建对应的.in或.out文件,并将相关的数据写入. 核心代码如下: /** * 创建文件 * @param data * @param basedir * @param n ...