Мне нужно обрезать PDF-файл, чтобы извлечь определенную информацию из этого PDF-документа. Есть ли способ обрезать PDF-файл и сохранить только текст внутри обрезанной области и удалить весь остальной текст за пределами обрезанной области?
Я попытался использовать pyPdf, чтобы обрезать его, используя следующий код.
from pyPdf import PdfFileWriter, PdfFileReader
with open("in.pdf", "rb") as in_f:
input1 = PdfFileReader(in_f)
output = PdfFileWriter()
numPages = input1.getNumPages()
print "document has %s pages." % numPages
for i in range(numPages):
page = input1.getPage(i)
print page.mediaBox.getUpperRight_x(), page.mediaBox.getUpperRight_y()
page.trimBox.lowerLeft = (25, 25)
page.trimBox.upperRight = (225, 225)
page.cropBox.lowerLeft = (50, 50)
page.cropBox.upperRight = (200, 200)
output.addPage(page)
with open("out.pdf", "wb") as out_f:
output.write(out_f)
Сам PDF-файл обрезается, но весь текст необрезанного PDF-файла сохраняется. Если я копирую все содержимое нового PDF-файла, копируется даже обрезанный (невидимый) текст.