DOCX fájlok írása LdmDocxWriter-rel

DOCX fájlok írása LdmDocxWriter-rel

DOCX fájlok írása LdmDocxWriter-rel

LdmDocxWriter átalakítja a light_document_model.Document (LDM) objektum egy A DOCX fájl. Ez a írás-egyenleget az DocumentReader, amely DOCX fájlok olvasását teszi lehetővé. Együtt egy körbe-körbe vezetéket alkotnak: DocumentReader a következőkben:, LdmDocxWriter - Kifelé.


Prerequisites

RequirementDetail
Python3.9 or later
Packageaspose-words-foss (MIT-licenc)
InputA. Az alábbiak: light_document_model.Document példány
pip install aspose-words-foss

Írás egy fájl útvonalra

LdmDocxWriter.write(doc, output_path) a LDM dokumentum DOCX-re történő sorozatosítása. Ha a út alapkönyvtár nem létezik, akkor az hívás: fel fogja emelni. FileNotFoundError.

from aspose.words_foss import DocumentReader, LdmDocxWriter

# Load a DOCX and obtain its LDM representation
reader = DocumentReader()
reader.load_file("input/original.docx")
ldm_doc = reader.to_light_document()

# Write the LDM document back to a DOCX file
writer = LdmDocxWriter()
writer.write(ldm_doc, "output/result.docx")
print("Written to output/result.docx")

Írjon Bytes-be (memóriában lévő kimenetel)

LdmDocxWriter.write_to_bytes(doc) a DOCX tartalmat egy formában adja vissza. bytes Az objektum. Használja ezt, ha a fájlt egy hálózaton keresztül kell elküldeni, tárolni az adatbázisban, vagy a fájlrendszerbe való teljes írás elkerülése.

reader = DocumentReader() reader.load_file(“input/report.docx”) ldm_doc = reader.to_light_document()

writer = LdmDocxWriter() docx_bytes = writer.write_to_bytes(ldm_doc) print(f"DOCX bytes: {len(docx_bytes)}")

Save manually if desired

with open(“output/report_copy.docx”, “wb”) as f: f.write(docx_bytes)


---

### A kör- és forduló mintája

A leggyakoribb felhasználási eset az olvasás-módosítás-írás körbe-körbe:

reader = DocumentReader()
reader.load_file("input/template.docx")
ldm_doc = reader.to_light_document()

# Inspect or modify the LDM here
print("Sections:", len(ldm_doc.sections))
print("Paragraphs:", len(ldm_doc.all_paragraphs))

writer = LdmDocxWriter()
writer.write(ldm_doc, "output/modified.docx")

Elvesztett figyelmeztetések

When LdmDocxWriter nem képes hűségesen bemutatni egy LDM-konstrukciót DOCX formátumban a szén-dioxidot kibocsátja. DocxWriterLossyWarning.Ezt Python-szel is el lehet készíteni. warnings A leállított anyag ellenőrzésére szolgáló modul:

import warnings
from aspose.words_foss import DocumentReader, LdmDocxWriter, DocxWriterLossyWarning

reader = DocumentReader()
reader.load_file("input/complex.docx")
ldm_doc = reader.to_light_document()

writer = LdmDocxWriter()
with warnings.catch_warnings(record=True) as w:
    warnings.simplefilter("always", DocxWriterLossyWarning)
    writer.write(ldm_doc, "output/complex_out.docx")

for warning in w:
    print("Lossy:", warning.message)

Tippek és legjobb gyakorlatok

  • Mindig hívj. DocumentReader.to_light_document() a dokumentum átadása előtt az alábbiakhoz: LdmDocxWriter a szerző egy LDM-t vár el. Document, nem nyers. DocumentReader.
  • Használat write_to_bytes() a webes kezelőkben, hogy elkerüljék az ideiglenes fájlkezelést.
  • Check DocxWriterLossyWarning a kör- és térregresszió felderítéséhez szükséges vizsgálatok során, amikor: A könyvtár felújítása.
  • LdmDocxWriter.options A program a következőképpen alakítható: objektum a rendelkezésre álló beállítások megtekintése után.

Általános kérdések

IssueCauseMegjavítani.
FileNotFoundError a következő napon: write()A szülőkönyv nem létezik.A kimeneti könyvtár létrehozása: Path.mkdir(parents=True, exist_ok=True) mielőtt hívná. write()
DocxWriterLossyWarning kibocsátottLDM-konstrukció nem képzhető DOCX-benA figyelmeztető üzenetet felülvizsgálja; elfogadja a veszteséget vagy módosítja az LDM-t, mielőtt írná.
Üres kimeneti dokumentáció DOCXAz LDM dokumentum nem tartalmaz szakaszokat vagy bekezdéseket.Verify ldm_doc.sections és a következők: ldm_doc.all_paragraphs nem üresek a betöltés után.

FAQ

Mi az LDM (light_document_model)?

Az LDM az Aspose.Words FOSS absztrakt, Python-native képzése egy Word dokumentumról. Elválasztja a dokumentumszabályt a DOCX bináris formátumból és megkönnyíti a programmatizált dokumentumok felmérését és manipulálását.

Írhatok PDF-re a DOCX helyett?

Igen használat LdmPdfWriter.write(doc, output_path) ugyanabból a PDF-csomagból. a kibocsátás, vagy LdmMarkdownWriter.write(doc, output_path) Markdown-ra.

Does write_to_bytes() Kiadó útvonalra van szükség?

  • Nem, nem. - Mi az?. write_to_bytes(doc) csak az LDM dokumentumot veszi és a bytes tárgy A fájlrendszer nem kölcsönhat.

API-referencia összefoglaló

Rendszer / módszerDescription
LdmDocxWriterLDM-t alakít át. Document DOCX-fájlba
LdmDocxWriter.write(doc, output_path)A megadott fájl útvonalra írja a DOCX- t .
LdmDocxWriter.write_to_bytes(doc)A DOCX tartalmat úgy adja vissza: bytes
LdmDocxWriter.optionsÍró konfigurációs lehetőségek
DocxWriterLossyWarningFigyelmeztetés, ha egy LDM-konstrukció a leírás során lemerül.
DocumentReaderOlvassa el a DOCX fájlt és létrehozja az LDM-reprezentációt.
DocumentReader.to_light_document()A feltöltött dokumentumot LDM-ként adja vissza. Document

See Also

 Magyar