5

是否有工具可以确定 PDF 是横向还是纵向?

我目前已经为此查看了pdfboxItext,但似乎找不到它。请告诉他们是否支持这一点。

使用Origami提取 PDF 页面信息提供了 pdf 页面具有某种程度的旋转的信息。以下是折纸的报道:

{:Parent=>#<PDF::Reader::Reference:0x872349c @id=8, @gen=0>, :Type=>:Page, 
 :Contents=>#<PDF::Reader::Reference:0x8722f24 @id=4, @gen=0>, :Resources=># <PDF::Reader::Reference:0x870dbd8 @id=2, @gen=0>, 
:MediaBox=>[0, 0, 612, 792], :Rotate=>270}

旋转:270

“旋转”实际上是什么意思?

4

1 回答 1

16

命令行pdfinfo实用程序有一种方法可以让您查看每个页面的页面大小信息和 MediaBox、CropBox、BleedBox、ArtBox 和 TrimBox 值。在这里,我询问特定文档第 2 到 4 页的值:

pdfinfo -box -f 2 -l 4 sample.pdf
  Creator:        FrameMaker 6.0
  Producer:       Acrobat Distiller 5.0.5 (Windows)
  CreationDate:   Thu Aug 17 16:43:06 2006
  ModDate:        Tue Aug 22 12:20:24 2006
  Tagged:         no
  Form:           AcroForm
  Pages:          146
  Encrypted:      no
  Page    2 size: 419.535 x 297.644 pts
  Page    2 rot:  90
  Page    3 size: 297.646 x 419.524 pts
  Page    3 rot:  0
  Page    4 size: 297.646 x 419.524 pts
  Page    4 rot:  0
  Page    2 MediaBox:     0.00     0.00   595.00   842.00
  Page    2 CropBox:     87.25   430.36   506.79   728.00
  Page    2 BleedBox:    87.25   430.36   506.79   728.00
  Page    2 TrimBox:     87.25   430.36   506.79   728.00
  Page    2 ArtBox:      87.25   430.36   506.79   728.00
  Page    3 MediaBox:     0.00     0.00   595.00   842.00
  Page    3 CropBox:    148.17   210.76   445.81   630.28
  Page    3 BleedBox:   148.17   210.76   445.81   630.28
  Page    3 TrimBox:    148.17   210.76   445.81   630.28
  Page    3 ArtBox:     148.17   210.76   445.81   630.28
  Page    4 MediaBox:     0.00     0.00   595.00   842.00
  Page    4 CropBox:    148.17   210.76   445.81   630.28
  Page    4 BleedBox:   148.17   210.76   445.81   630.28
  Page    4 TrimBox:    148.17   210.76   445.81   630.28
  Page    4 ArtBox:     148.17   210.76   445.81   630.28
  Page    4 MediaBox:     0.00     0.00   595.00   842.00
  File size:      6888764 bytes
  Optimized:      yes
  PDF version:    1.4

请注意以下事项:

  • *Boxvalues:这些是 4 个数字,其单位是 PostScript 点:第一对代表左下角的坐标,第二对代表右上角的坐标。

  • MediaBox:是 PDF 中每个页面的必需设置。

  • TrimBox: 是一个可选设置,如果没有明确定义,则默认与 MediaBox 相同。如果它偏离了 MediaBox,那么它会告诉 PDF 查看器(和打印机驱动程序)只呈现和显示整个页面的特定部分。

  • Page size:此信息是根据 TrimBox 值设置的距离派生 + 计算得出的。

  • rot:这给出了页面旋转的值。可能是090180270

现在,页面的横向纵向定义是这样的:

  • 如果宽度大于高度,则将其视为“风景”。
  • 如果高度大于宽度,则将其视为“纵向”。
  • 不确定宽度和高度是否具有相同的值。

但!……

  • ...您可以将非零/Rotation值放入您的 PDF 源代码(pdfinfo将显示为rot:信息)并以这种方式将“纵向”PDF 页面显示为“横向”,反之亦然;

  • ...您可以在“人像”形状的 MediaBox 内定义一个“风景”形状的 TrimBox,反之亦然,并将其与非零旋转混合,并以这种方式使“风景”形状的内容出现在“肖像'​​(或倒置)看起来......

对此感到困惑?别担心,很多都是。事实是,“风景”和“肖像”并不是明确定义的技术术语。它们只是描述我们所见事物的惯例……

于 2012-08-21T10:04:45.717 回答