你如何以编程方式 - 或从CLI - 旋转PDF?

时间:2013-08-21 23:58:44

标签: linux pdf ghostscript suse

我需要做的是以编程方式或从CLI顺时针或逆时针旋转PDF。

我花了大量时间研究并尝试使用GhostScript旋转PDF(由于其他原因已经安装了GS)无济于事,似乎没有任何旋转。

我已经研究过使用pdftk,但它需要java库,我宁愿不在系统上安装java。

我们甚至考虑过自己修改PDF文件,我们已经取得了一些成功,但是我们没有遇到适用于所有PDF的可靠方法。

所以我的#1首选项是使用系统上的现有资源来实现这一目标。 我的#2首选项是尽可能对现有系统进行一些修改以实现此目的。

有问题的服务器使用Linux(OpenSuse 11)和PHP 5.2,我安装了Ghostscript 9.0。

非常感谢任何建议。

3 个答案:

答案 0 :(得分:3)

您可以使用 pdfpages LaTeX包

\documentclass{article}
\usepackage{pdfpages}

\begin{document}
    \includepdf[angle=45]{document.pdf}
\end{document}

上面的LaTeX文档,通过pdflatex编译,生成一个旋转45度的文档。

还有一些工具(pdfpages的包装),如 pdfjam ,可直接在命令行中使用:

$ pdfjam --suffix rotated45 --angle 45 --fitpaper true document.pdf

答案 1 :(得分:1)

如果可以使用ImageMagick,可以使用{{3}}进行此操作。

示例:

$ convert originalfile.pdf -rotate <cw_angle_degrees> newfile.pdf

但请注意,由于这是基于光栅的旋转,因此(通常)会有明显的质量损失和文件大小的增加。

答案 2 :(得分:0)

您还没有说过如何使用Ghostscript尝试这样做,但如果您想使用pdfwrite设备,则需要设置/ AutoRotatePages = / None,否则它将旋转最终页面,以便任何颜色都可以真实文本是水平的。