How to Export Documents to PDF in Python

How to Export Documents to PDF in Python

Aspose.Words FOSS for Python exports loaded Word documents to PDF through a built-in rendering pipeline. The library reads DOCX, DOC, RTF, TXT, and Markdown as input formats; PDF is an output-only format.


Basic PDF Export

PDF is an export-only format. Save the document to PDF using LdmPdfWriter:

import aspose.words_foss as aw
from aspose.words_foss.pdf_writer import LdmPdfWriter

doc = aw.Document("report.docx")
LdmPdfWriter().write(doc, "report.pdf")

LdmPdfWriter always produces PDF output, regardless of the output path’s extension. The PDF writer preserves text formatting, tables, images, and page layout from the source document.


Using PdfSaveOptions

For finer control over PDF output, pass a PdfSaveOptions instance to the writer’s constructor:

import aspose.words_foss as aw
from aspose.words_foss.pdf_writer import LdmPdfWriter
from aspose.words_foss.saving import PdfSaveOptions

doc = aw.Document("input.docx")
opts = PdfSaveOptions()
LdmPdfWriter(opts).write(doc, "output.pdf")

Batch Conversion

Convert multiple files in a loop:

import aspose.words_foss as aw
from aspose.words_foss.pdf_writer import LdmPdfWriter
from pathlib import Path

writer = LdmPdfWriter()
for src in Path("docs/").glob("*.docx"):
    doc = aw.Document(str(src))
    writer.write(doc, str(src.with_suffix(".pdf")))
    print(f"Converted {src.name}")

See Also

 English