PDFBox生成的PDF尺寸(高度和宽度)交换

时间:2013-12-03 15:12:13

标签: pdfbox

让我先介绍一下我的项目。我有一个pdf,我需要使用PDFBox API将其转换为图像(一页图像),并使用PDFBox API将所有这些图像写入新的pdf。基本上,将pdf转换为pdf,我们将其称为PDF转码。

现在,我有一些情况,其中传送顺利,即转码后的pdf与原始的pdf内容完全匹配,但只有1/10的情况,转码的pdf的尺寸以某种方式交换。例如,原始pdf- 8.2 x 11.2 转码pdf- 11.2 x 8.2。简而言之,高度与宽度交换。我不知道为什么这个API对于不同的文件表现不同。如果有人可以回答同样的问题?

提前致谢, Vaibhav的

1 个答案:

答案 0 :(得分:2)

(总结原始问题评论中对话的结果)

PDF的每个页面都有一个旋转属性,可以指示其他定义的页面坐标的旋转,赋予PDF规范ISO 32000-1

  

旋转整数(可选;可继承)显示或打印时页面顺时针旋转的度数。该值应为90的倍数。默认值:0。

     

(第30页的表30 页面对象中的条目)

例如,被定义为具有A4纵向格式的媒体框的页面可能仍然必须显示为A4横向页面。

在您的情况下,其中一个使用过的软件包似乎尊重这种轮换,而另一个则没有。

在使用PDFBox时,您可以使用

查询PDPage page的轮播
int rotation = page.findRotation();

本质上,它返回页面的旋转键的值或(如果没有找到)页面树中的祖先。