旋转pdf文件小于90度?


8

如何在Ubuntu下旋转小于90度的PDF文件?

我可以互动进行吗?


不用栅格化就可以吗?我知道您可以使用Postscript来做到这一点,但我不知道PDF是否支持以任意角度旋转所有内容。
吉尔斯(Gillles)“所以-别再邪恶了”,

1
@Gilles-我认为您不能以度为单位旋转。PDF文件中有一个正在被操纵的标志,但是它与我到目前为止所发现的只有90度的增量。
slm

@Gilles当然是,请参阅我的回答。
Marco Marco

stackoverflow.com上也有人问过这个问题。我在那里贴了一个LaTeX解决方案。
Phimor

Answers:


6

我辛苦又漫长的样子,找不到任何工具可以让您以交互式方式执行此操作,这是本机PDF查看器类型的工具。我没有尝试过,但是您可以使用Inkscape或Gimp来执行此操作。我认为使用它们可能会遇到的唯一问题是批量旋转多页文档的能力。

甚至PdfTk之类的命令行工具也无法按度旋转,这真的让我感到惊讶。

但是,使用ImageMagick可以以1度为增量旋转PDF文件。

例子

$ convert original.pdf -rotate 45 rot45.pdf

您可以将您想输入的任何值用作旋转参数。它还将取负数,因此这是可能的:

$ convert original.pdf -rotate -45 rot-45.pdf

使用默认选项,输出质量将急剧下降,因此您可能需要包括-density开关以提高生成的PDF文件的质量。

$ convert -density 300x300 original.pdf -rotate 45 rot45.pdf

结果PDF

这是Evince的屏幕截图以及生成的PDF文件。

   pdf的ss


4
Imagemagick或Gimp通过首先光栅化来旋转,这通常是不希望的。
吉尔(Gilles)'所以

@Gilles-是的,我知道,我一直在寻找另一种方法,但是空了。有一个SU Q&A显示使用编程方法,但这似乎超出此处的适用范围。您找到其他方法了吗?我碰到的页面说Acrobat Pro可以旋转1度,但是我无法确定它是否也在进行光栅化。
slm

谢谢,先生!该方法能否通过convert旋转单个多页pdf文件中的每一页来实现?@吉尔斯:就我而言,PDF文件是通过扫描创建的。因此,我认为首先进行栅格化没有关系吗?
蒂姆(Tim)

@Tim-是的,因为它们已经被扫描,所以已经被光栅化了。是的,它处理每个页面。
slm

@Tim-是的,这就是示例所显示的内容,它转换了多页文档。
slm

7

您可以使用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

然后,您可以使用以下命令行旋转PDF:

context --input=somefile.pdf --rotation=10 rotatepdf.tex

这是示例输出:

屏幕截图


2

stackoverflow.com上也有人问过这个问题。

另一个选择是使用LaTeX:

\documentclass{standalone}
\usepackage{graphicx}

\begin{document}
\includegraphics[angle=-1.5]{odd-scan}
\end{document}

在这种情况下,我将文件odd-scan.pdf(稍作旋转的一页扫描)rotated.tex与具有上面内容的LaTeX文件放在同一文件夹中,然后运行pdflatex rotated.tex。输出为rotated.pdfPDF顺时针旋转1.5度的文件。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.