Python PDF文件方向检测

Python PDF文件方向检测,python,html,pdf,web-applications,Python,Html,Pdf,Web Applications,我需要一个使用Python检测PDF文件(纵向或横向)方向的帮助。有人有主意吗 我一直在尝试不同的LIB,但尚未成功。每个页面可以有不同的方向,但您可以使用检测第一页的页面大小并相应地确定方向: from PyPDF2 import PdfFileReader pdf = PdfFileReader(file('example.pdf')) page = pdf.getPage(0).mediaBox if page.getUpperRight_x() - page.getUpperLeft

我需要一个使用Python检测PDF文件(纵向或横向)方向的帮助。有人有主意吗


我一直在尝试不同的LIB,但尚未成功。

每个页面可以有不同的方向,但您可以使用检测第一页的页面大小并相应地确定方向:

from PyPDF2  import PdfFileReader

pdf = PdfFileReader(file('example.pdf'))
page = pdf.getPage(0).mediaBox
if page.getUpperRight_x() - page.getUpperLeft_x() > page.getUpperRight_y() - page.getLowerRight_y():
    print('Landscape')
else:
    print('Portrait')

我可以只检测第一页!好!!tnx:)我还可以使用此mediabox裁剪页面考虑以下mediabox[100,0200199]。您的算法将声明它是横向的(如X>Y)。然而,文件将是纵向的(宽度=100,高度=199)。不要假设mediabox的起始位置是0,0,这是不必要的。另一个具有挑战性的问题是,我们如何理解pdf文件是A4、A3或其他大小。mediaBox输出基于像素,我尝试将其转换为英寸,但与不同的A4大小页面不一致。它通常是72 dpi,即1英寸=72点。Mediabox是页面大小减去边距,因此它将比实际的A4宽度窄。你必须考虑页边距的公差。这个答案忽略了页面旋转条目的影响,不是吗?