提高PDF的对比度
借助imageMagick这个工具可以实现, 该工具支持多个平台(windows, MacOS, Linux, IOS)
目录
以windows为例:
1. 下载imageMagick并安装
在安装时记得勾选Install legacy components (convert.exe etc)
这一选项, 因为操作需要而且只用到该命令
2. 安装gswin
如果不安装gswin, 执行convert命令会报错.
3. 将pdf转为图片
假设原始文件名是origin.pdf, 目标文件名是target.pdf, 下方的convert应替换为实际路径
convert -density 400 origin.pdf output/%03d.jpg
上方的density参数指像素密度,数字越高图片质量越高体积越大, 如果pdf带文字,就设置300以上吧. 这是影响最终效果的重要参数, 如果过低, 那么下方再神操作效果也不会很好, 过高会导致文件体积过大
该指令将整个pdf按页转为多张图片, %03d.jpg表示命名为001.jpg,002.jpg….(超过1000页就应改为%04d.jpg)
转换为图片这一步, 是为了获取中间产物进行测试和调整, 通常只需截取一部分页面即可(因为截取一页需要花费数秒时间)
convert -density 400 origin.pdf[10-20] output/%03d.jpg #截取第11到第21页
convert -density 400 origin.pdf[9] output/%03d.jpg #截取第10页
4. 测试转换效果
convert -level 40,97% -quality 50 output/010.jpg preview010.jpg
上方的level参数是指调整图像通道的级别, 40,97%表示灰度低于40%即为黑点, 高于97%为白点. 这里的40,97需要反复调节到自己认为达到最佳效果, 这是整个过程中最重要的参数, 通过该参数实现调整对比度
quality指输出jpg文件质量(压缩比), 1-100数字越高质量越高体积越大, 出于减少pdf文件大小的考虑, 应适当调节该参数(举个例子density 400的jpg文件可能有1.4M, 压缩后为700K, 这样最终的pdf文件大小相差一倍, 而肉眼无法察觉页面效果有何区别)
5. 转为pdf
确定了density, level和quality的值之后就可以执行转换了
可以从原始pdf转换
convert -density 400 origin.pdf -level 40,97% -quality 50 target.pdf
也可以从之前生成的jpg转换
convert -level 40,97% -quality 50 output/* target.pdf
6. 迁移书签
原先的pdf文件可能有书签, 可以使用FreePic2Pdf将书签迁入新生成的文件中
先从原始文件取书签, 然后往新文件里挂书签即可
最终效果