虽然我的问题的主题似乎是许多PDF操作包和工具的良好支持功能,但我需要明确表示我不想旋转PDF。
我有一张PDF,它显示尺寸为WxH 297x210(A4旋转)的纵向(A4)。
现在,我需要实现的是,这个PDF在保留尺寸的同时具有横向定位。
我不确定这需要我做什么。
如果我使用Adobe Illustrator将文档格式更改为所需位置,我还需要旋转内容。如果我将此页面放入设计糟糕的PDF中,则此页面上的表单域和所有注释仍处于纵向方向。
如何旋转它们以匹配新的页面方向?似乎没有工具支持这种任务。
感谢您的支持!
托马斯
答案 0 :(得分: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
答案 1 :(得分:0)
您可以使用FoxitReader。它是免费的,它有一个功能HOME - &gt; ROTATE VIEW,它可以满足您的需求。
答案 2 :(得分:0)
首先我修复了PDF。
看来,cpdf -upright也会解决这个问题。如果由于商业用途而无法使用cpdf,则可以使用Adobe Illustrator中显示的手动方法。
cpdf没有更正Acrofields方向,也没有更正pdf中的注释。我不得不重新创建注释。可以使用JavaScript修复Acrofields,如下所示。
然后我使用Acrobat Pro中的PDF JavaScript修复了Acrofields。
输入以下脚本:
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键,不返回。 ENTER键是键盘上的回车键。这将执行突出显示的JavaScript。形状区域将旋转+ 90°并且应该几乎正确,但至少应该位于它们应该位于的位置附近。