如何使用python以多边形形状裁剪pdf的一部分

2024-06-28 11:17:20 发布

您现在位置:Python中文网/ 问答频道 /正文

使用以下坐标作为顶点:[(91,39), (190,36), (190,48), (91,51)] 我正在尝试裁剪PDF (width: 612, height:792)

from PyPDF2 import PdfFileWriter,PdfFileReader,PdfFileMerger
import itertools

for i in list(itertools.permutations([a,b,c,d],4)):
    pdf_file = PdfFileReader(open("IMG_7598.pdf","rb"))
    output=PdfFileWriter()
    i = [(91,39), (190,36), (190,48), (91,51)]

    page = pdf_file.getPage(0)
    # page.mediaBox.upperLeft= i[3]
    # page.mediaBox.upperRight= i[2]
    # page.mediaBox.lowerRight= i[1]
    # page.mediaBox.lowerLeft = i[0]

    page.cropBox.upperLeft= i[3]
    page.cropBox.upperRight= i[2]
    page.cropBox.lowerRight= i[1]
    page.cropBox.lowerLeft = i[0]

    output.addPage(page)

我尝试过mediabox和Dropbox,这两种方法都给出了矩形形状,即使坐标是针对非矩形的多边形。请给我一些建议


Tags: importoutputpdfpagefileitertools矩形mediabox