Travailler avec PDF Writer
Travailler avec PDF Writer
Aspose.Words FOSS pour Python exporte les documents en PDF à travers un pipeline de rendement dédié.La pipelina convertit chaque élément LDM - paragraphes, cours, formes et tables - en output PDF utilisant des renderings spécialisés.
Exportation de PDF
Sauver tout document téléchargé dans le PDF en utilisant la méthode ‘save()’ :
import aspose.words_foss as aw
doc = aw.Document("input.docx")
doc.save("output.pdf")Le format de sauvegarde est déterminé automatiquement à partir de l’extension du fichier. Pour un contrôle explicite, utilisez ‘SaveFormat’ :
import aspose.words_foss as aw
doc = aw.Document("input.doc")
doc.save("output.pdf", aw.SaveFormat.PDF)Utilisation de PdfSaveOptions
Configurer la sortie PDF avec ‘PdfSaveOptions’:
import aspose.words_foss as aw
from aspose.words_foss.saving import PdfSaveOptions
doc = aw.Document("input.docx")
opts = PdfSaveOptions()
doc.save("output.pdf", opts)PDF Rendering Pipeline
L’auteur PDF utilise quatre renderers spécialisés à l’intérieur :
| Renderer | Handles |
|---|---|
ParagraphRenderer | Renders LDM paragraphs into PDF — handles alignment, spacing, indentation |
RunRenderer | Renders formatted runs — text segments with fonts, colors, and links |
ShapeRenderer | Renders shapes, images, and positioned elements |
TableRenderer | Renders LDM tables — cell borders, merges, and padding |
Ces renderers travaillent ensemble pour produire le PDF final. Vous interagissez avec eux indirectement via ‘Document.save()’.
Convertir plusieurs formats en PDF
L’écrivain PDF accepte les entrées de tout lecteur supporté (DOCX, DOC, RTF, TXT, Markdown):
import aspose.words_foss as aw
for input_file in ["report.docx", "legacy.doc", "notes.rtf", "readme.txt"]:
doc = aw.Document(input_file)
pdf_name = input_file.rsplit(".", 1)[0] + ".pdf"
doc.save(pdf_name)
print(f"Saved {pdf_name}")Conseils et meilleures pratiques
- Utilisez ‘PdfSaveOptions’ lorsque vous devez personnaliser la sortie PDF au-delà des paramètres défauts.
- Pour la conversion de lot, le chargement et l’économie dans un loop - les rendants sont impatients et réutilisables sur tous les documents.
- L’écrivain PDF conserve les taches, les couleurs et les dimensions de la lettre courageuse, italique, sous-lignale du document source.
- Les mélanges de cellules de table (‘CellMerge`) sont rendus correctement dans la sortie PDF.
- Test avec des documents représentatifs avant de déployer à la production - les layouts complexes peuvent nécessiter une ajustement.
Les problèmes communs
| Issue | Cause | Fix |
|---|---|---|
| Fonts differ in PDF | Font not available on the system | Install the required fonts or use font substitution |
| Tables misaligned | Complex nested table structures | Simplify table nesting in the source document |
| Images missing | Image data not embedded in source | Ensure images are embedded, not externally linked |
FAQ
Quels formats d’entrée peuvent être exportés vers PDF?
Les fichiers DOCX, DOC, RTF, TXT et Markdown peuvent tous être chargés et sauvegardés en PDF.
Le PDF-auteur soutient-il les têtes et les pieds de page ?
Les têtes et les pieds du document source sont inclus dans la sortie PDF lorsqu’ils sont présents dans le LDM.
Puis-je contrôler la taille et l’orientation de la page PDF ?
Les propriétés de configuration de page (grâce, orientation, marges) du document source sont conservées dans le PDF. Modifier ‘PageSetup’ sur les sections ‘Document’ avant d’en économiser pour changer ces valeurs.
Le résumé de référence API
| Class / Method | Description |
|---|---|
PdfSaveOptions | Options for saving documents as PDF |
ParagraphRenderer | Renders LDM paragraphs into PDF |
RunRenderer | Renders formatted runs (text with fonts, colors, links) |
ShapeRenderer | Renders shapes, images, and positioned elements |
TableRenderer | Renders LDM tables into PDF |
SaveFormat.PDF | Constant for PDF save format |
Document.save(path) | Save document to the specified format |
Voir aussi
- Aspose.Words pour Python - Documentation d’entreprise