你可以用ConTeXt做到这一点。
之前的版本2013.10.07 09:47
存在裁剪页面的错误,因此请确保您使用包含修复程序的版本。
首先创建一个rotatepdf.tex
具有以下内容的文件(例如)
\getfiguredimensions [\getdocumentargument{input}]
\starttext
\dorecurse{\noffigurepages}
{\startTEXpage
\externalfigure
[\getdocumentargument{input}]
[page=\recurselevel,
orientation=\getdocumentargument{rotation}]
\stopTEXpage}
\stoptext
Run Code Online (Sandbox Code Playgroud)
然后您可以使用以下命令行旋转 PDF:
context --input=somefile.pdf --rotation=10 rotatepdf.tex
Run Code Online (Sandbox Code Playgroud)
这是一个示例输出:
我仔细看了很久,找不到任何工具可以让您以交互方式执行此操作,即原生 PDF 查看器类型的工具。我没有尝试过,但您可以使用 Inkscape 或 Gimp 来执行此操作。我认为您在使用它们时可能遇到的唯一问题是批量旋转多页文档的能力。
连PdfTk之类的命令行工具都做不了度数旋转,着实让我吃惊。
但是,使用 ImageMagick 您可以以 1 度为增量旋转 PDF 文件。
$ convert original.pdf -rotate 45 rot45.pdf
Run Code Online (Sandbox Code Playgroud)
您可以为rotate 参数输入任何您想要的值。它也将采用负数,因此这是可能的:
$ convert original.pdf -rotate -45 rot-45.pdf
Run Code Online (Sandbox Code Playgroud)
使用默认选项时输出的质量会急剧下降,因此您可能需要包含-density
开关以提高生成的 PDF 文件的质量。
$ convert -density 300x300 original.pdf -rotate 45 rot45.pdf
Run Code Online (Sandbox Code Playgroud)
这是 Evince 的屏幕截图以及生成的 PDF 文件。