如何查找PDF是横向还是纵向

Rat*_*lle 4 pdf pdf-generation itext pdfbox

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

我目前看过pdfboxItext,但似乎我找不到它.请告诉他们是否支持这一点.

使用Origami提取PDF页面信息提供了pdf页面在某种程度上具有旋转的信息.这是Origami报道的内容:

{: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}
Run Code Online (Sandbox Code Playgroud)

旋转:270

"轮换"究竟意味着什么?

Kur*_*fle 14

pdfinfo命令行工具有办法让你看到的页面大小信息和MediumBox,裁剪框,出血框,作品框和裁切框值每一个网页.在这里,我询问特定文档的第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
Run Code Online (Sandbox Code Playgroud)

请注意以下事项:

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

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

  • TrimBox:是可选设置,如果未明确定义,则默认与MediaBox相同.如果它偏离MediaBox,则它告诉PDF查看器(和打印机驱动程序)仅呈现和显示整页的特定部分.

  • Page size:此信息是根据TrimBox值设置的距离导出+计算的.

  • rot:这给出了页面旋转的值.也许是0,90,180270度.

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

  • 如果宽度大于高度,它被视为"风景".
  • 如果高度大于宽度,则视为"肖像".
  • 如果宽度和高度具有相同的值,则不确定.

但!....

  • ...您可以/Rotation在PDF源代码中pdfinfo显示非零值(将显示为rot:信息)并实现"纵向"PDF页面显示为"横向"的方式,反之亦然;

  • ...你可以定义一个'landscape'形状'/ TrimBox inside a 'portrait' shaped/ MediaBox`,反之亦然,并将它与非零旋转混合,并实现'landscape'形状内容将出现在'portrait'中(或颠倒)看......

对此感到困惑?别担心,很多都是.事实上,"风景"和"肖像"并不是明确且毫不含糊地定义的技术术语.它们只是描述我们看到的内容的惯例......

  • @ user1438735:`/ Rotation 180`导致颠倒方向.`/旋转90`顺时针旋转90度.`/旋转270`顺时针旋转270度(与逆时针旋转90度相同). (2认同)