我正在使用Python/Django。
PyPDF2閱讀我目前的pdf。
如何使用PyPDF2獲取PDF定位
我想閱讀我已經保存的pdf文件,并獲得pdf內單頁的方向。
我期望能夠確定頁面是橫向還是縱向。
tempoutpdffilelocation = settings.TEMPLATES_ROOT + nameOfFinalPdf
pageOrientation = pageToEdit.mediaBox
pdfOrientation = PdfFileReader(file(temppdffilelocation, "rb"))
# tempPdfOrientationPage = pdfOrientation.getPage(numberOfPageToEdit).mediaBox
print("existing pdf width: ")
# print(existing_pdf.getPage(numberOfPageToEdit).getWidth)
# print("get page size with rotation")
# print(tempPdfOrientationPage.getPageSizeWithRotation)
existing_pdf = pdfOrientation.getPage(numberOfPageToEdit).mediaBox
# print(pageOrientation)
if pageOrientation.getUpperRight_x() - pageOrientation.getUpperLeft_x() > pageOrientation.getUpperRight_y() - pageOrientation.getLowerRight_y():
print('Landscape')
print(pageOrientation)
# print(pdfOrientation.getWidth())
else:
print('Portrait')
print(pageOrientation)
# print(pdfOrientation.getWidth())
# create a new PDF with Reportlab
can = canvas.Canvas(packet, pagesize=letter)
最后一行設置頁面大小=信什么,我想確定基于我目前的PDF格式。
這是我的進口:
from PyPDF2 import PdfFileWriter, PdfFileReader
from reportlab.pdfgen import canvas
from reportlab.lib.pagesizes import letter, landscape
import urllib
我試過pyPdf .mediaBox但總是返回預期的文件大小,而不是實際大小相同的值。而pyPdf已經過時了。 正如你所看到的我也嘗試了getWidth和withRotation。
我認為PyPDF2 PdfFileReader可以確定選定對象的方向。
任何幫助表示贊賞。謝謝。