我正在使用pdfkit从字符串生成pdf文件。
ASK:我传递给pdfkit的每个字符串我希望它作为输出pdf中的新页面。
我知道这可以使用from_file,如下所示。但是,我不想将其写入文件并使用它。
pdfkit.from_file(['file1', 'file2'], 'output.pdf')
这将创建包含2页的output.pdf文件。
类似下面的东西可能吗?
pdfkit.from_string(['ABC', 'XYZ'], 'output.pdf')
它应该写" ABC"在第1页和" XYZ"在output.pdf文件的第2页
答案 0 :(得分:1)
您可以像这样连接字符串:
pdfkit.from_string('ABC' + 'XYZ', 'output.pdf')
答案 1 :(得分:0)
我知道这是旧的,但如果其他人发现自己在这里,我想我会分享我所做的。我必须实现 PyPDF2 来执行上面指定的操作。我的类似解决方案是:
from PyPDF2 import PdfFileReader, PdfFileWriter
import io
with open('output.pdf', 'wb') as output_file:
writer = PdfFileWriter()
for s in ['ABC', 'XYZ']:
stream = io.BytesIO()
stream.write(pdfkit.from_string(s, False))
# This line assumes the string html (or txt) is only 1 page.
writer.addPage(PdfFileReader(stream).getPage(0))
writer.write(output_file)