Работа с PDF писател

Работа с PDF писател

Aspose.Words FOSS за Python изнася документи в PDF чрез специален тръбопровод за рендеринг. Тръбопровода превръща всеки LDM елемент параграфи, изпълнения, форми и таблици ?? в изход на PDF с помощта на специализирани рендери.


Основен PDF експорт

Запишете всеки зареден документ в PDF с помощта на метода save():

import aspose.words_foss as aw

doc = aw.Document("input.docx")
doc.save("output.pdf")

Форматът на записване се определя автоматично от разширението на файла. За изричен контрол използвайте SaveFormat:

import aspose.words_foss as aw

doc = aw.Document("input.doc")
doc.save("output.pdf", aw.SaveFormat.PDF)

Използване на PdfSaveOptions

Конфигуриране на изхода PDF с 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 рендеринг тръбопровод

PDF писателят използва четири специализирани интернета:

RendererHandles
ParagraphRendererRenders LDM paragraphs into PDF — handles alignment, spacing, indentation
RunRendererRenders formatted runs — text segments with fonts, colors, and links
ShapeRendererRenders shapes, images, and positioned elements
TableRendererRenders LDM tables — cell borders, merges, and padding

Тези рендери работят заедно, за да създадат окончателния PDF файл. Вие взаимодействате с тях непряко чрез Document.save().


Преобразуване на няколко формата в PDF

PDF писателят приема вход от всеки поддържан читател (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}")

Съвети и най-добри практики

  • Използвайте PdfSaveOptions, когато трябва да персонализирате изхода на PDF извън стандартните.
  • За партидно преобразуване, зареждане и запазване в петна рендерите са бездържавни и могат да се използват отново между документите.
  • PDF-репитерът запазва дебели, курсивни, подчертания, размери на шрифтове и цветове от източния документ.
  • Сливането на таблични клетки (CellMerge) се представя правилно в изход PDF.
  • Изпитване с представителни документи преди внедряването им в производството сложни оформления може да се наложи да бъдат коригирани.

Общи проблеми

IssueCauseFix
Fonts differ in PDFFont not available on the systemInstall the required fonts or use font substitution
Tables misalignedComplex nested table structuresSimplify table nesting in the source document
Images missingImage data not embedded in sourceEnsure images are embedded, not externally linked

Часто задавани въпроси

Кои формати на вход могат да бъдат експортирани към PDF?

DOCX, DO C, RTF, TXT и Markdown файловете могат да бъдат заредени и запазени като PDF.

Поддържа ли PDF писателя заглавията и стъпките на страници?

Заглавията и краищата от източния документ се включват в изхода на PDF, когато са налице в LDM.

Мога ли да контролирам размера и ориентацията на страницата в PDF?

Свойствата на настройката на страницата (размер, ориентация, маржове) от източния документ са запазени в PDF. Промените PageSetup в секциите за ̋Document∂ преди да запишете, за да промените тези стойности.


Снимка на API референтна информация

Class / MethodDescription
PdfSaveOptionsOptions for saving documents as PDF
ParagraphRendererRenders LDM paragraphs into PDF
RunRendererRenders formatted runs (text with fonts, colors, links)
ShapeRendererRenders shapes, images, and positioned elements
TableRendererRenders LDM tables into PDF
SaveFormat.PDFConstant for PDF save format
Document.save(path)Save document to the specified format
 Български