有没有办法在不使用 win32.client 的情况下将 excel 工作表保存为 Python 中的 PDF?

Is there a way to save excel worksheets as PDFs in Python without using win32.client?

我希望将多个 excel 工作表保存为 PDF,然后将它们全部合并为一个。

我需要在没有 win32.client 的情况下执行此操作 - 这可能吗?

如果要将 excel 文件保存为 pdf,可以使用 asposecells 和 jpype:

import jpype
import asposecells
jpype.startJVM()
from asposecells.api import Workbook, FileFormatType, PdfSaveOptions

workbook = Workbook("example.xlsx")
saveOptions = PdfSaveOptions()
saveOptions.setOnePagePerSheet(True)
workbook.save("example.pdf", saveOptions)

jpype.shutdownJVM()

您可以在此处找到更多信息: https://pypi.org/project/aspose-cells/

为了将 pdf 与 python 合并,您可以使用 PyPdf2 的 PdfMerger:

from PyPDF2 import PdfFileMerger
pdfs = ['file1.pdf', 'file2.pdf', 'file3.pdf', 'file4.pdf']

merger = PdfFileMerger()

for pdf in pdfs:
    merger.append(pdf)

merger.write("result.pdf")
merger.close()

您可以在 post 中阅读更多相关信息: Merge PDF files