“I’m not really sure if the quality parameter is right for PNG.”
对于PNG输出,质量设置与JPEG的质量设置非常不同(只是从0到100的整数)。
对于PNG,它由两位数组成:
>第一个数字(十)是(很大程度上)zlib压缩级别,它可以从0到9。
(但是0的设置有一个特殊的含义:当你使用它时,你会得到霍夫曼压缩,而不是zlib压缩级别0.这通常更好…很奇怪但真实)
>第二个数字是PNG数据编码过滤器类型(压缩之前):
> 0是没有,
> 1是“sub”,
> 2是“up”,
> 3是“平均”,
> 4是“Paeth”,而
> 5是“适应性”。
实际意义:
>对于具有固定颜色序列的插图,“none”过滤器(-quality 00)通常是最合适的。
>对于自然景观照片,“适应性”过滤(-quality 05)通常是最好的。
“I’m having problems with saving back to PDF. Some of the files have the wrong page size, and I’ve tried every command and procedure I can find […] but either a few pages are specified at about 2″ wide, or they are 8.5×11 but the others are about 35″ wide.”
没有可用的PNG文件,我创建了一些不同维度的简单的,以验证不同的命令(因为我不确定自己)。其实,你使用的
convert -page letter -adjoin single*.png multipage.pdf
确实创建(相同)字母大小的所有PDF页面,但它将我的样本(不同大小)的PNG总是放在PDF页面的左下角。 (如果PNG超过PDF页面尺寸,它会缩小它们以使它们适合 – 但是它不会扩展更小的PNG以填充可用的页面空间。)
对命令的以下修改将将PNG放入每个PDF页面的中心:
convert \
-page letter \
-adjoin \
single*.png \
-gravity center \
multipage.pdf
如果这对你来说还不够好,你可以通过添加一个“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
multipage.pdf