Jäsentimet
Parserit
Internal API — Tällä sivun luokkia käytetään sisäisesti asiakirjamuunnosputkessa. Useimmat kehittäjät käyttävät sen sijaan
Document.save()jaDocument.get_text(). Katso Core Management julkisesta API:sta.
Aspose.Words FOSS for Python sisältää erikoistuneita jäsennereitä, jotka poimivat rakenteellista dataa DOCX:n sisäosista. NumberingParser käsittelee luettelon numerointimäärittelyjä, ja StyleParser poimii asiakirjan tyylejä.
Numerointiparse
NumberingParser lukee numerointimäärittelyt DOCX‑paketista ja tarjoaa ne kysely‑API:n kautta. Käytä parse_numbering_part() numeroint XML:n lataamiseen, jonka jälkeen voit kysyä listan ominaisuuksia apumetodeilla.
| Menetelmä | Kuvaus |
|---|---|
NumberingParser.parse_numbering_part() | Jäsennä DOCX-numerointielementti |
NumberingParser.get_list_info() | Hae tietoja tietystä listasta ID:n perusteella |
NumberingParser.get_level_info() | Hae tason tiedot listasta annetussa syvyydessä |
NumberingParser.is_ordered_list() | Tarkista, onko listan taso järjestetty vai luettelomerkitty |
NumberingParser.get_start_value() | Hae listatason aloitusnumero |
NumberingParser.get_delimiter() | Hae listatason erotinmerkkijono |
Tyylijäsennin
StyleParser jäsentää tyylinimet rakenteellisiksi ParsedStyle-objekteiksi. Se tunnistaa otsikot, lohkokitaukset, koodilohkot ja luettelokappaleet DOCX-tyylinimistä.
| Menetelmä | Kuvaus |
|---|---|
StyleParser.parse() | Jäsennä tyylin nimi ParsedStyle-objektiin |
StyleParser.get_style_chain() | Jäsennä tyylin nimiketju perittyjä tyylejä varten |
StyleParser.is_setext_heading() | Tarkista, onko tyyli Setext-tyylinen otsikko |
StyleParser.extract_all_styles() | Poimi yksittäiset tyylinimet pilkulla erotetusta ketjusta |
Numerointidatan malli
Jäsennetyt numerointitiedot tallennetaan rakenteellisiin objekteihin:
| Luokka | Kuvaus |
|---|---|
NumberingInfo | Numeroinnin määritelmä, jossa on num_id, abstract_num_id ja levels |
NumberingLevel | Tason määritelmä, jossa on format, start ja text ominaisuuksia |
ListInfo | Tietoa tietystä listan esiintymästä |
ListLevelInfo | Tason erityisiä muotoilutietoja |
Vinkkejä ja parhaat käytännöt
- Kutsu
parse_numbering_part()kerran asiakirjan lataamisen jälkeen täyttääksesi kaikki luettelomääritelmät - Käytä
is_ordered_list()erottaaksesi numeroidut luettelot luettelomerkeillä varustetuista luetteloista - Käytä
get_style_chain()jäsentääksesi perittyjä tyyliketjuja yhdessä kutsussa - Numerointi- ja tyylijäsennereitä käytetään sisäisesti asiakirjan muunnosputkessa
Yleiset ongelmat
| Ongelma | Syy | Korjaus |
|---|---|---|
| Tyhjät numerointimäärittelyt | Asiakirjassa ei ole luetteloita | Tarkista get_list_info()-paluuarvo ennen ominaisuuksien käyttämistä |
| Puuttuva tyyli | Tyylin nimeä ei tunnistettu | Käytä parse()-toimintoa tunnetulla tyylin nimellä |
| Virheellinen luettelotaso | Väärä tasoparametri | Luettelotasot alkavat nollasta |
API-viitteiden yhteenveto
| Luokka / Metodi | Kuvaus |
|---|---|
NumberingParser.parse_numbering_part() | Jäsennä DOCX-numerointimäärittelyt |
NumberingParser.get_list_info() | Hae luettelon tiedot ID:n perusteella |
NumberingParser.is_ordered_list() | Tarkista, onko luettelotaso järjestetty |
StyleParser.parse() | Jäsennä tyylin nimi rakenteelliseksi tiedoksi |
StyleParser.get_style_chain() | Jäsennä perittyjen tyylinimien ketju |
NumberingInfo | Numerointimäärittelyn tietomalli |
NumberingLevel | Tason määrittely muodolla ja aloitusarvolla |