2013-10-25 40 views
0

虽然我的问题的主题似乎是许多PDF操作包和工具的良好支持功能,但我需要明确说明我不想旋转PDF。在不改变方向的情况下旋转PDF

我有一个尺寸为WxH 297x210(A4旋转)的纵向方向(A4)的PDF。

现在,我需要实现的是,此PDF具有横向取向,同时保留了尺寸。

我不知道这是什么需要我做的。

如果我使用Adobe Illustrator将文档格式更改为所需位置,我还需要旋转内容。如果我把这个页面到设计不良的PDF,此页面上的formfields和所有批注仍处于纵向。

我如何可以旋转它们以匹配新的页面方向?似乎没有工具支持这种任务。

感谢您的支持!

托马斯

+0

我真的不明白你想要什么:)其他人? –

+0

@ maf-soft在PDF中,页面的尺寸由矩形和旋转角度给出。如果您想要A4风景,您可以使用297x210矩形和无(或180°)旋转或210x297矩形以及90°或270°旋转。 OP似乎有一种方式,需要另一种方式。我还没有具体的方式要求。因此,我不幸地知道没有工具可以帮助。 – mkl

+0

此问题仅在打印时出现。使用包括ghostscript的工具链将PDF创建到PS文件中。生成的PS文件直接发送到打印机。在这种情况下,打印机无法识别,文件应旋转以适合页面,并打印A4横向格式,就好像它是纵向的,并将右侧的第三个横断面切除。 – thst

回答

3

这并不完全清楚你想要什么,但我认为它可能是你想改变观看旋转,反向旋转内容和页面尺寸来弥补。

在这种情况下,CPDF command line tools可以做到这一点:

cpdf -upright in.pdf -o out.pdf 

这将使观看转动0,旋转所述内容和改变的页面尺寸来补偿。然后,您可以更改观看旋转为你

cpdf -rotate <angle> in.pdf -o out.pdf 

(绝对)或

cpdf -rotate-by <angle> in.pdf -o out.pdf 

(相对),其中<angle>0, 90, 180, 270, 360喜欢。

如果这些还不够,你还必须

cpdf -rotate-contents <angle> in.pdf -o out.pdf 

哪里是一个度数顺时针旋转,并且

cpdf -mediabox "minx miny width height" in.pdf -o out.pdf 
+0

嗨,我不能告诉你,如果你提出的服务会达到同样的目的。我会发布我已经做了什么来解决它,但是我愿意为您提供这些荣誉,如果这能够解决它:首先,我已经在Adobe Illustrator中创建了新的页面,并且没有旋转的方向风景。然后,我将原始PDF的内容复制到了风景之一中。为了适应页面,内容必须旋转。然后我在Adobe Acrobat Pro中加载了破损的PDF文件,用新创建的文件替换了所有页面。现在所有领域仍然旋转。我用Javascript来修复。 – thst

+0

好吧,我用你提到的方法尝试了cpdf。 “直立”似乎解决了问题,下面我用Illustrator做了什么!我需要明天进行测试,这似乎是让PDF达到预期方向的最快方式。这些字段没有修复,我的JavaScript仍然是必需的。 – thst

0

您可以使用FoxitReader。它是免费的,它有一个功能首页 - >旋转视图,这是你想要的。

+0

正如我所说的,旋转PDF并没有帮助。旋转时,它可以正确打印,但生成的图像现在处于纵向状态。我只需要改变方向。但是,页面中的所有元素仍然保持旋转并与布局保持90°角。 – thst

0

首先我固定PDF。

看来,这CPDF -upright也将解决这个问题。如果由于商业用途而无法使用cpdf,则可以使用Adobe Illustrator中显示的手动方法。

cpdf并未纠正Acofields的方向,而不是PDF中的注释。我不得不重新创建注释。可以使用JavaScript修复Acofields,如下所示。

  1. 在Adobe Illustrator中打开PDF
  2. 为您的文档的每一页1..1重复
  3. ,当前页面为“x”中的步骤如下:
  4. 创建A4新文档,景观模式,请确保大小正好是297x210(宽x高)!
    1. 打开PDF页面X在Illustrator
    2. 复制使用复制/粘贴功能到新文档第x页中的所有元素
    3. 使用对象/变换/旋转旋转到合适的角度,通常需要-90 °或+ 90°
    4. 在页面上放置旋转对象,以符合您的期望
    5. 将文档保存为“页x.pdf”
    6. 关闭PDF页面X
    7. 重复与下一个页面,直到DONE ...
  5. 打开Acrobat X将单页-.... pdf合并到一个大PDF中。如果您对此不确定,请查看在线文档。不要混淆页面的顺序!
  6. 打开PDF破
  7. 保存用新名称
  8. 打开网页的工具,选择“更换页面”功能。
  9. 选择合并的PDF作为页面源,并将PDF文件中的所有页面替换为合并PDF中的固定页面。
  10. 你应该看到的领域,从位置在90度角站立,他们都应该是

然后,我使用的Acrobat Pro的PDF JavaScript的固定Acrofields。

  1. 打开Javascript控制台。
  2. 输入下面的脚本:

    var box = getPageBox(); 
    var w = box[2] - box[0]; 
    var h = box[1] - box[3]; 
    // left,top   right,bottom 
    // bottom, h-left  top, h-right 
    for(i=0; i<numFields; i++) { 
        var f = getField(getNthFieldName(i)); 
        var orig = f.rect; 
        f.rect = [orig[3], h-orig[0], orig[1], h-orig[2]]; 
        f.rotation = 0; 
    } 
    

    要执行,彰显脚本,然后按回车键,不返回。 ENTER键是键盘上的输入键。这将执行突出显示的JavaScript。表格区域将旋转+ 90°,并且应该放在几乎正确的位置,但至少应该靠近它们应该位于的位置。

  3. 浏览所有页面,选择页面上的所有字段,并将所有字段一起移动到正确的位置。
相关问题