Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用PyPDF2更正方向信息错误的PDF页面_Python_Pypdf2 - Fatal编程技术网

Python 使用PyPDF2更正方向信息错误的PDF页面

Python 使用PyPDF2更正方向信息错误的PDF页面,python,pypdf2,Python,Pypdf2,嗯。我正在尝试将多个PDF文档合并到一个文档中。但是,这些文件有不同的来源,有些是在计算机中创建的,有些是用不同的扫描仪/软件扫描的。所以,在加入它们之前,我将它们全部缩放到A4大小 我的问题是有些文档显示正常,但当我检查方向时,文档看起来好像是旋转的 例如,对于此文档,它在浏览器和Acrobat Reader中显示OK,但如果我使用PyPDF2获取信息: pdf_reader = PdfFileReader(path) for page in range(pdf_reader.getNumPa

嗯。我正在尝试将多个PDF文档合并到一个文档中。但是,这些文件有不同的来源,有些是在计算机中创建的,有些是用不同的扫描仪/软件扫描的。所以,在加入它们之前,我将它们全部缩放到A4大小

我的问题是有些文档显示正常,但当我检查方向时,文档看起来好像是旋转的

例如,对于此文档,它在浏览器和Acrobat Reader中显示OK,但如果我使用PyPDF2获取信息:

pdf_reader = PdfFileReader(path)
for page in range(pdf_reader.getNumPages()):
    this_page = pdf_reader.getPage(page)
    orientation = this_page.get('/Rotate')
    print(f"Document: {path}")
    print(f"    Orientation: {orientation}")
    print(f"    mediaBox:    {this_page.mediaBox}")
    print(f"    artBox:      {this_page.artBox}")
    print(f"    bleedBox:    {this_page.bleedBox}")
    print(f"    cropBox:     {this_page.cropBox}")
    print(f"    trimBox:     {this_page.trimBox}")
我得到:

        Orientation: 90
        mediaBox:    RectangleObject([0, 0, 792, 542])
        artBox:      RectangleObject([0, 0, 792, 542])
        bleedBox:    RectangleObject([0, 0, 792, 542])
        cropBox:     RectangleObject([0, 0, 792, 542])
        trimBox:     RectangleObject([0, 0, 792, 542])
这很烦人,因为在接下来的步骤中,我将页码添加到文档中,但由于方向的原因,这些页码都放错了位置

请注意,页面显示正确,但它们只是以某种方式具有错误的方向数据。如果我尝试设置旋转页面的方向,例如

this_page.rotateClockwise(-orientation)
然后,它们会横向显示

有没有关于如何纠正方向的建议

非常感谢