Возможно нет.
PDF-файлы не предназначены для машинного чтения или редактирования; они описывают отформатированные, выложенные, печатные страницы.
Я пытаюсь перевести файлы PDFs с помощью API перевода и выводить его как PDF, сохраняя формат таким же. Мой подход состоит в том, чтобы преобразовать PDF в word doc и перевести файл, а затем преобразовать его обратно в PDF. Но проблема в том, что нет эффективного способа конвертировать PDF в слово. Я пытаюсь написать свою собственную программу, но в файлах PDF есть много форматов. Поэтому я думаю, что для обработки всех форматов потребуется некоторое усилие. Итак, мой вопрос, есть ли эффективный способ перевода там PDF-файлов без потери формата или есть эффективный способ конвертировать их в docx. Я использую python в качестве языка программирования.
Здесь вы можете использовать pdfminer вместо API:
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
from io import StringIO
def convert_pdf_to_txt(path):
rsrcmgr = PDFResourceManager()
retstr = StringIO()
codec = 'utf-8'
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, codec=codec, laparams=laparams)
fp = open(path, 'rb')
interpreter = PDFPageInterpreter(rsrcmgr, device)
password = ""
maxpages = 0
caching = True
pagenos=set()
for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password,caching=caching, check_extractable=True):
interpreter.process_page(page)
text = retstr.getvalue()
fp.close()
device.close()
retstr.close()
return text