2012-03-14 70 views
25

我有很多PDF文档要转换为PNG,在GIMP中编辑,然后保存回多页Acrobat文件。我正在填写表格并添加扫描签名,尝试避免打印,签名,然后重新扫描,并输入我需要输入的信息。将多页PDF转换为PNG并返回(Linux)

我一直在尝试使用Imagemagick转换为PNG文件,这似乎工作正常。我使用命令convert -quality 100 -density 300x300 multipage.pdf single%d.png
(我不确定质量参数是否适用于png)。

但我在保存回PDF时遇到问题。有些文件的页面大小错误,我尝试了每个可以找到的命令和过程,但总是有一些奇怪的大小。分辨率似乎有所不同,因此它在某个缩放级别看起来不错,但是几页可以指定为大约2英寸宽,或者它们是8.5x11,但其他大约是35英寸宽。我试图确保Gimp的Canvass尺寸和分辨率正确,并将分辨率保存在文件中,但这似乎并不重要。

我用来保存文件的命令是convert -page letter -adjoin single*.png multipage.pdf我尝试了其他参数,但没有任何关系。

如果有人有任何想法或替代方案,我会很感激。

+4

我认为你可以直接用GIMP编辑PDF文件。 – Blender 2012-03-14 20:56:47

+3

如果你想要做的是添加一个签名图像作为覆盖到PDF页面,你可以用一些PDF工具做到这一点,而无需转换为PNG。 – 2012-03-14 21:04:23

+1

@Blender:Gimp导入PDF,但实际上并不保存为PDF;它至少会在Linux上打印成PDF,但只能打印单张图像,而不是我所希望的多页PDF。 – 2012-03-14 23:48:29

回答

31

“我不确定质量参数是否适合PNG。”

对于PNG输出时,-quality设置非常不同于JPEG的质量(它简单地是从0100的整数)。

对于PNG它是由两个单数字组成:

  • 第一个数字(十位)是(主要)zlib压缩水平,并且它可以从去到09
    (然而0的设置有着特殊的意义:当你使用它,你会得到霍夫曼压缩,不zlib压缩级别0。这往往是更好的... ...奇怪,但却是事实。)

  • 的第二个数字是PNG数据编码过滤器类型(它被压缩前):

    • 0是无,
    • 1为 “子”,
    • 2是 “向上”,
    • 3是 “平均”,
    • 4是 “Paeth”,和
    • 5是 “自适应”。

在实际应用中,这意味着:

  • 对于颜色的固体序列插图一个 “无” 的过滤器(-quality 00)通常是最合适的。
  • 对于自然风景的照片,“自适应”滤波(-quality 05)通常是最好的。

“我在与保存回PDF的问题。有些文件有错误的页面大小,我尝试了所有的指令和程序,我可以找到[... ]但是要么指定几个页面大约2英寸宽,要么是8.5x11英寸,而是其他大约35英寸宽。“

没有可用的PNG文件,我创建了几个简单的维度不同的维度来验证不同的命令(因为我不确定我自己)。事实上,你所使用的:

convert -page letter -adjoin single*.png multipage.pdf 

确实创造(同)letter尺寸所有的PDF页面,但它把我的(不同尺寸)的PNG样品总是在PDF页面的左下角。 (如果PNG超过PDF页面大小,它会缩小它们以使它们适合 - 但它不会扩大较小的PNG以填充可用页面空间。)

对命令的以下修改将放置该PNG图像到每个PDF页面的中心:

convert   \ 
    -page letter \ 
    -adjoin   \ 
    single*.png \ 
    -gravity center \ 
    multipage.pdf 

如果这仍然不是你不够好,你可以强制执行(可能非比例!)扩展到通过添加-scale '590!x770!'参数几乎填满信区(这将在页面的每一边留下11点的边界):

convert    \ 
    -page letter  \ 
    -adjoin   \ 
    single*.png  \ 
    -gravity center \ 
    -scale '590!x770!' \ 
    multipage.pdf 

要删除多余的边框,请使用-scale '612!x792!'。 - 如果你只想要向上换算如果同时保持PNG的纵横比要求的情况发生,使用-scale '590<x770<'

convert    \ 
    -page letter  \ 
    -adjoin   \ 
    single*.png  \ 
    -gravity center \ 
    -scale '590<x770<' \ 
    multipage.pdf 
+0

谢谢。我现在刚刚开始休假,但当我回来时,我会尝试一些建议,看看它们是如何工作的,但即使不起作用,您也应该为此付出努力。 :) – 2012-08-20 23:41:47

+0

赫:-) - 但我很确定它的工作原理。如果只有我会为此付出努力',现在我会成为有钱人:-) – 2012-08-20 23:43:50

6

为什么不只是使用Xournal?这是我用来注释PDF文件

+0

谢谢,我不使用它的原因是我以前从来没有听说过它。这听起来很有希望,但当我从度假回来时,我一定会考虑它。我会在几周后重新讨论这个话题。 – 2012-08-20 23:40:04