Dokumentumok betöltése LoadOptions használatával

Dokumentumok betöltése LoadOptions használatával

Dokuments betöltése a(z) LoadOptions használatával

Ez az útmutató bemutatja, hogyan lehet a dokumentum betöltését egy egyszerű fájlútvonal vagy adatfolyamon túl is szabályozni a LoadOptions osztály használatával. Document konstruktor-túlterhelései elfogadnak egy LoadOptions példányt — Document(fileName, loadOptions) és Document(stream, loadOptions) — így az itt leírt beállítások betöltéskor érvényesülnek, mielőtt a dokumentumobjektum vissza lenne adva a kódodnak.


A LoadOptions osztály

LoadOptions a Aspose.Words FOSS számára szükséges beállításokat hordozza, amikor egy dokumentumot egy Document objektumba tölt be. Konstruktorai tartalmaznak egy paraméter nélküli LoadOptions()-t, LoadOptions(password)-t a jelszóval védett fájl közvetlen megnyitásához, valamint LoadOptions(loadFormat, password, baseUri)-t a formátum kifejezett megadásához. A Password és BaseUri (relatív hivatkozások, például összekapcsolt erőforrások feloldására használt) mellett a LoadOptions elérhetővé teszi a Encoding-t szövegalapú formátumokhoz, a TempFolder-t nagyméretű dokumentumok feldolgozásához, a MswVersion-t annak meghatározásához, hogy melyik Word verzió formátumkonvenciói érvényesek, valamint a UpdateDirtyFields, IgnoreOleData és UseSystemLcid finomabb betöltési viselkedésvezérlést biztosít. LoadOptions.FontSettings lehetővé teszi, hogy FontSettings-t adjon meg betöltéskor, a betűtípusok csak a dokumentum betöltése után történő beállítása helyett.

Formátum-specifikus betöltési beállítások

Néhány formátumnak saját LoadOptions alosztálya van, amely a formátumra jellemző beállításokat tárja fel. TxtLoadOptions (egyszerű szöveghez) hozzáadja a AutoNumberingDetection, DetectNumberingWithWhitespaces, DetectHyperlinks, DocumentDirection értékeket, valamint külön LeadingSpacesOptions/TrailingSpacesOptions típusú TxtLeadingSpacesOptions/TxtTrailingSpacesOptions objektumokat a sorok elején és végén lévő szóközök kezeléséhez. MarkdownLoadOptions hozzáadja a PreserveEmptyLines, ImportUnderlineFormatting és SoftLineBreakCharacter beállításokat a Markdown sortörés-konvencióinak dokumentum bekezdésekre és futtásokra történő leképezésének szabályozásához. Mindkét alosztály örökli az összes általános LoadOptions tulajdonságot, így egy jelszó vagy erőforrásbetöltési visszahívás, amely egy TxtLoadOptions vagy MarkdownLoadOptions példányon van beállítva, ugyanúgy működik, mint az alaposztályban.

Erőforrás betöltési visszahívások

LoadOptions.ResourceLoadingCallback elfogad egy IResourceLoadingCallback megvalósítást, amely értesítést kap, amikor a betöltő feloldja a betöltendő dokumentum által hivatkozott külső erőforrásokat. A visszahívás egy ResourceLoadingArgs-t kap, amely leírja a betöltött erőforrás ResourceType-ját, és visszaad egy ResourceLoadingAction-t, hogy a betöltő tudja, normálisan betöltse-e az erőforrást, kihagyja-e, vagy egyedi adatot helyettesítsen. Ez a kiterjesztési pont a betöltés során az erőforrás-felbontás vezérléséhez vagy elfogásához, a formátumtól függetlenül.

Nyelv, Irány és Helyreállítási Beállítások

LoadOptions.LanguagePreferences egy LanguagePreferences objektum, amelynek DefaultEditingLanguage (egy EditingLanguage enum érték) beállítja a Aspose.Words nyelvet, amelyet a FOSS feltételez, ha a dokumentum nem határoz meg egyet kifejezetten; AddEditingLanguage(language) és AddEditingLanguages(languages) regisztrálják a dokumentum által esetleg használt további nyelveket. DocumentDirection (amely közvetlenül is elérhető a TxtLoadOptions-on) egy enum, amelynek LeftToRight, RightToLeft és Auto értékei vannak a betöltéskor a szövegfolyás irányának szabályozásához. LoadOptions.RecoveryMode egy DocumentRecoveryMode értéket vesz fel, amely szabályozza, hogyan reagál a betöltő, ha hibás vagy részben sérült dokumentummal találkozik.

Folyamat és Figyelmeztető Visszahívások

Az erőforrás betöltésén túl a LoadOptions.WarningCallback és a LoadOptions.ProgressCallback visszahívás-implementációkat fogadnak el, amelyek értesülnek a betöltés közben felmerülő nem kritikus problémákról és a betöltési előrehaladásról, rendre — hasznos a helyreállítható problémák a hívó kódban való megjelenítéséhez vagy a nagy dokumentumok előrehaladásának jelentéséhez lekérdezés nélkül.


Tippek és Legjobb Gyakorlatok

  • Adja át a LoadOptions(password)-t (vagy állítsa be a LoadOptions.Password-t) ahelyett, hogy a betöltési kivételt elkapná és újrapróbálná — a Aspose.Words FOSS-nek szüksége van a jelszóra, mielőtt egyáltalán meg tudná elemezni a dokumentumot.
  • Állítsa be a LanguagePreferences.DefaultEditingLanguage-t olyan dokumentumok betöltésekor, amelyek nyelvi metaadatai hiányosak vagy megbízhatatlanok, hogy az azt követő nyelvtől függő feldolgozás kiszámíthatóan viselkedjen.
  • A formátumspecifikus opciók osztályt (TxtLoadOptions, MarkdownLoadOptions) részesítsd előnyben a LoadOptions alaposztállyal szemben a formátumok betöltésekor, mivel a konkrét alosztály olyan formátumra vonatkozó beállításokat tesz elérhetővé, amelyeket az alaposztály nem.
  • Használd a IResourceLoadingCallback implementálását, amikor a betöltés során kell átirányítani, gyorsítótárazni vagy blokkolni a külső erőforrások feloldását, a dokumentum már memóriában léte után történő megoldás helyett.
  • Állítsd be szándékosan a LoadOptions.RecoveryMode-t olyan csővezetékeknél, amelyek megbízhatatlan vagy harmadik fél által biztosított forrásokból származó dokumentumokat dolgoznak fel, ahelyett, hogy az alapértelmezett helyreállítási viselkedésre támaszkodnál.

Gyakori problémák

ProblémaOkJavítás
Jelszóval védett dokumentum betöltése kivételt dobNem lett megadva jelszó, vagy a betöltés már megkezdődése után került megadásraAdja át LoadOptions(password) (vagy állítsa be Password egy LoadOptions példányon) a Document konstruktor túlterhelésnek, amely LoadOptions-t fogad el
A betöltött szövegfájl elején vagy végén lévő whitespace nincs a várt módon kezelveAz alapértelmezett TxtLeadingSpacesOptions/TxtTrailingSpacesOptions viselkedés nem egyezik a forrásfájl whitespace konvencióivalÁllítsa be a TxtLoadOptions.LeadingSpacesOptions / TrailingSpacesOptions értéket explicit módon
A Markdown sortörések nem felelnek meg a várt bekezdésstruktúránakMarkdownLoadOptions.PreserveEmptyLines vagy SoftLineBreakCharacter nem egyezik a forrás Markdown konvencióivalMódosítsd a megfelelő MarkdownLoadOptions tulajdonságot a betöltés előtt
A külső erőforrás betöltése nem figyelhető vagy szabályozhatóNem volt IResourceLoadingCallback regisztrálva a LoadOptions.ResourceLoadingCallbackValósítsd meg a IResourceLoadingCallback elemet, és rendeld hozzá a betöltés előtt

FAQ

Hogyan tölthetek be egy jelszóval védett dokumentumot?

Állítsd össze a LoadOptions-t a jelszóval — new LoadOptions(password) — vagy állítsd be a LoadOptions.Password-t, majd add át a new Document(fileName, loadOptions)-nek vagy a new Document(stream, loadOptions)-nek.

Szükségem van egy formátumspecifikus LoadOptions alosztályra, vagy elegendő az alaposztály?

Az alap LoadOptions osztály lefedi az összes formátumra közös beállításokat (jelszó, kódolás, visszahívások). Használjon formátum-specifikus alosztályt, például TxtLoadOptions vagy MarkdownLoadOptions, ha a formátumra vonatkozó beállításokra van szükség, mint például a szóközök kezelése szövegfájloknál vagy a sorvég konvenciók a Markdown esetén.

Hogyan tudom elfogni vagy átirányítani a dokumentum betöltése közben hivatkozott erőforrásokat?

Implementálja a IResourceLoadingCallback elemet, és a betöltés előtt rendelje hozzá a LoadOptions.ResourceLoadingCallback változóhoz. A visszahívás minden erőforráshoz kap egy ResourceLoadingArgs objektumot, és egy ResourceLoadingAction értéket ad vissza, amely meghatározza, hogyan folytatja a betöltő.

Hogyan szabályozhatom, hogy a Aspose.Words FOSS milyen nyelvet feltételez egy betöltött dokumentum esetén?

Állítsa be a LoadOptions.LanguagePreferences.DefaultEditingLanguage értékét egy EditingLanguage értékre a betöltés előtt; használja a AddEditingLanguage/AddEditingLanguages elemeket a dokumentumban előforduló további nyelvek regisztrálásához.

Mi történik, ha a betöltő hibás formátumú dokumentummal találkozik?

A viselkedést a LoadOptions.RecoveryMode szabályozza, egy DocumentRecoveryMode érték, amely meghatározza, hogyan reagál a betöltő a forrásdokumentum szerkezeti problémáira.


API Reference összefoglaló

Osztály/MódszerLeírás
LoadOptionsAlapbeállítási objektum, amely a dokumentum betöltését szabályozza
Document(fileName, loadOptions) / Document(stream, loadOptions)Konstruktor túlterhelések, amelyek a betöltés közben LoadOptions-t alkalmazzák
TxtLoadOptionsBetöltési beállítások, amelyek egyszerű szöveges dokumentumokra vonatkoznak
MarkdownLoadOptionsBetöltési beállítások, amelyek a Markdown dokumentumokra vonatkoznak
IResourceLoadingCallbackVisszahívási interfész a külső erőforrás feloldásának elfogásához a betöltés közben
ResourceLoadingArgs / ResourceLoadingActionErőforrásonkénti eseményadatok és a betöltőnek visszaadott művelet
LanguagePreferencesKonfigurálja a betöltéskor feltételezett alapértelmezett és további szerkesztői nyelveket
DocumentDirectionEnum a szövegfolyás irányának szabályozásához (LeftToRight, RightToLeft, Auto)
DocumentRecoveryModeA betöltő viselkedésének vezérlése, ha a dokumentum hibás

Lásd még:

 Magyar