我正在尝试使用翻译API翻译PDF文件,并通过保持相同格式将其输出为PDF。我的方法是将PDF转换为word doc,然后翻译文件,然后将其转换回PDF。但是问题是,没有有效的方法将PDF转换为word。我正在尝试编写自己的程序,但是PDF有很多格式。因此,我想将需要一些工作来处理所有格式。所以我的问题是,有没有什么有效的方法可以在不丢失格式的情况下转换PDF,或者有没有将它们转换为docx的有效方法。我正在使用python作为编程语言。
答案 0 :(得分:1)
可能不是。
实际上,PDF并不是机器可读或可编辑的。他们描述了格式化的,可布局的,可打印的页面。
答案 1 :(得分:1)
您可以在此处使用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