我使用Ghostscript将PDF转换为jpeg缩略图。它适用于大多数文件,但是我有一些最终看起来很糟糕 - 就像一个巨大的白色背景上的小缩略图。GhostScript中的CropBox和MediaBox
这是因为,在这些问题的PDF上,MediaBox被设置为比CropBox大得多的尺寸。我可以通过使用-dUseCropbox使其忽略MediaBox维度来修复Ghostscript中的这一问题...但这不适用于没有定义CropBox的其他PDF。
所以,我能想到的两种解决方案:
导入之前,不知怎的,检查PDF文件,看它是否有定义裁剪框。如果它有一个CropBox,则使用-dUseCropBox开关。如果它没有定义CropBox,那么我们不使用该开关。
修改PDF文件中的MediaBox尺寸,使它们与CropBox尺寸相匹配。
那么,我将使用什么代码来检查CropBox/MediaBox尺寸的PDF文件,并在必要时编辑它们?
不,问题是,当cropbox不存在时,-dUseCropBox不会恢复到媒体箱。它只处理定义了裁剪框的文件,并跳过不带裁剪框的文件。 – user1244953 2012-03-05 17:34:16
换句话说,我希望它使用作物箱(如果存在)和媒体箱(如果不存在)。如果-dUseCropBox以这种方式工作,这将是有意义的,但事实并非如此。它只适用于定义了裁剪框的文件,而不是默认的媒体箱,就像我希望裁剪框不存在时那样。 – user1244953 2012-03-05 17:36:07