LoadOptions के साथ दस्तावेज़ लोड करना
LoadOptions के साथ दस्तावेज़ लोड करना
यह गाइड दिखाता है कि कैसे एक साधारण फ़ाइल पथ या स्ट्रीम से आगे दस्तावेज़ लोडिंग को नियंत्रित किया जाए, LoadOptions क्लास का उपयोग करके। Document में कंस्ट्रक्टर ओवरलोड्स होते हैं जो एक LoadOptions इंस्टेंस — Document(fileName, loadOptions) और Document(stream, loadOptions) — को स्वीकार करते हैं — इसलिए यहाँ वर्णित किसी भी सेटिंग को लोड समय पर लागू किया जाता है, इससे पहले कि दस्तावेज़ ऑब्जेक्ट आपके कोड को वापस दिया जाए।
The LoadOptions क्लास
LoadOptions वह सेटिंग्स ले जाता है जो Aspose.Words FOSS को दस्तावेज़ को एक Document ऑब्जेक्ट में लोड करते समय चाहिए। इसके कंस्ट्रक्टर में एक पैरामीटरलेस LoadOptions(), LoadOptions(password) शामिल है जो पासवर्ड-प्रोटेक्टेड फ़ाइल को सीधे खोलता है, और LoadOptions(loadFormat, password, baseUri) जो फ़ॉर्मेट को स्पष्ट रूप से निर्दिष्ट करता है। Password और BaseUri (सापेक्ष संदर्भों जैसे लिंक्ड रिसोर्सेज़ को हल करने के लिए उपयोग किए जाते हैं) के अलावा, LoadOptions टेक्स्ट-आधारित फ़ॉर्मेट्स के लिए Encoding उजागर करता है, बड़े-दस्तावेज़ प्रोसेसिंग के लिए TempFolder, यह निर्दिष्ट करने के लिए कि कौन से Word संस्करण की फ़ॉर्मेट कन्वेंशन लागू हों, MswVersion, और लोड व्यवहार पर अधिक सूक्ष्म नियंत्रण के लिए UpdateDirtyFields, IgnoreOleData, और UseSystemLcid। LoadOptions.FontSettings आपको लोड समय पर FontSettings प्रदान करने देता है, बजाय इसके कि फ़ॉन्ट्स को केवल दस्तावेज़ लोड होने के बाद कॉन्फ़िगर किया जाए।
फ़ॉर्मेट-विशिष्ट लोड विकल्प
कुछ फ़ॉर्मेट्स के अपने LoadOptions सबक्लास होते हैं जो उस फ़ॉर्मेट के विशिष्ट सेटिंग्स उजागर करते हैं। TxtLoadOptions (सादा टेक्स्ट के लिए) AutoNumberingDetection, DetectNumberingWithWhitespaces, DetectHyperlinks, DocumentDirection जोड़ता है, और प्रकार TxtLeadingSpacesOptions/TxtTrailingSpacesOptions के अलग-अलग LeadingSpacesOptions/TrailingSpacesOptions प्रदान करता है ताकि प्रत्येक पंक्ति पर अग्रणी और अनुगामी व्हाइटस्पेस को कैसे संभालना है, नियंत्रित किया जा सके। MarkdownLoadOptions PreserveEmptyLines, ImportUnderlineFormatting, और SoftLineBreakCharacter जोड़ता है ताकि Markdown के लाइन-ब्रेक कन्वेंशन को दस्तावेज़ पैराग्राफ़ और रन में कैसे मैप किया जाए, नियंत्रित किया जा सके। दोनों सबक्लास सभी सामान्य LoadOptions प्रॉपर्टी को विरासत में लेते हैं, इसलिए TxtLoadOptions या MarkdownLoadOptions इंस्टेंस पर सेट किया गया पासवर्ड या रिसोर्स-लोडिंग कॉलबैक बेस क्लास की तरह ही व्यवहार करता है।
संसाधन लोडिंग कॉलबैक
LoadOptions.ResourceLoadingCallback IResourceLoadingCallback का एक कार्यान्वयन स्वीकार करता है, जिसे लोडर द्वारा लोड किए जा रहे दस्तावेज़ द्वारा संदर्भित बाहरी संसाधनों को हल करने पर सूचित किया जाता है। कॉलबैक एक ResourceLoadingArgs प्राप्त करता है जो लोड हो रहे संसाधन के ResourceType का वर्णन करता है, और एक ResourceLoadingAction लौटाता है जिससे लोडर को बताया जाता है कि संसाधन को सामान्य रूप से लोड करना है, छोड़ना है, या कस्टम डेटा से बदलना है। यह लोडिंग के दौरान संसाधन समाधान को नियंत्रित या अवरोधित करने का विस्तार बिंदु है, चाहे कौन सा फ़ॉर्मेट पढ़ा जा रहा हो।
भाषा, दिशा, और पुनर्प्राप्ति सेटिंग्स
LoadOptions.LanguagePreferences एक LanguagePreferences वस्तु है जिसकी DefaultEditingLanguage (एक EditingLanguage enum मान) वह भाषा Aspose.Words सेट करती है जो FOSS तब मान लेता है जब किसी दस्तावेज़ में स्पष्ट रूप से कोई भाषा निर्दिष्ट नहीं की गई हो; AddEditingLanguage(language) और AddEditingLanguages(languages) अतिरिक्त भाषाओं को पंजीकृत करते हैं जो दस्तावेज़ उपयोग कर सकता है। DocumentDirection (जो सीधे TxtLoadOptions पर भी उपलब्ध है) एक enum है जिसमें LeftToRight, RightToLeft, और Auto मान होते हैं जो लोड पर पाठ प्रवाह दिशा को नियंत्रित करते हैं। LoadOptions.RecoveryMode एक DocumentRecoveryMode मान लेता है, जो नियंत्रित करता है कि लोडर कैसे प्रतिक्रिया देता है जब वह एक विकृत या आंशिक रूप से भ्रष्ट दस्तावेज़ का सामना करता है।
प्रगति और चेतावनी कॉलबैक
संसाधन लोडिंग से परे, LoadOptions.WarningCallback और LoadOptions.ProgressCallback कॉलबैक कार्यान्वयन स्वीकार करते हैं जिन्हें लोडिंग के दौरान उत्पन्न होने वाली गैर-घातक समस्याओं और लोड प्रगति के बारे में क्रमशः सूचित किया जाता है — यह कॉलिंग कोड को पुनर्प्राप्ति योग्य समस्याओं को उजागर करने या बड़े दस्तावेज़ों की प्रगति को बिना पोलिंग के रिपोर्ट करने में उपयोगी है।
टिप्स और सर्वोत्तम प्रथाएँ
LoadOptions(password)पास करें (याLoadOptions.Passwordसेट करें) बजाय लोड अपवाद को पकड़ने और पुन: प्रयास करने के — Aspose.Words FOSS को दस्तावेज़ को पूरी तरह पार्स करने से पहले पासवर्ड की आवश्यकता होती है।- जब ऐसे दस्तावेज़ लोड कर रहे हों जिनमें भाषा मेटाडेटा अनुपस्थित या अविश्वसनीय हो, तो
LanguagePreferences.DefaultEditingLanguageसेट करें, ताकि डाउनस्ट्रीम भाषा-निर्भर प्रोसेसिंग पूर्वानुमेय रूप से कार्य करे। - जब उन फ़ॉर्मैट्स को लोड कर रहे हों, तो बेस
LoadOptionsकी बजाय फ़ॉर्मेट-विशिष्ट विकल्प क्लास (TxtLoadOptions,MarkdownLoadOptions) को प्राथमिकता दें, क्योंकि विशिष्ट सबक्लास फ़ॉर्मेट-संबंधी सेटिंग्स को उजागर करता है जो बेस क्लास नहीं करती। - जब आपको लोडिंग के दौरान, दस्तावेज़ मेमोरी में आने के बाद नहीं, बाहरी संसाधन रिज़ॉल्यूशन को रीडायरेक्ट, कैश या ब्लॉक करने की आवश्यकता हो, तो
IResourceLoadingCallbackलागू करें। - डिफ़ॉल्ट रिकवरी व्यवहार पर निर्भर रहने के बजाय, उन पाइपलाइनों के लिए जो असुरक्षित या तृतीय-पक्ष स्रोतों से दस्तावेज़ प्रोसेस करती हैं,
LoadOptions.RecoveryModeको जानबूझकर सेट करें।
सामान्य समस्याएँ
| समस्या | कारण | समाधान |
|---|---|---|
| पासवर्ड-संरक्षित दस्तावेज़ लोड करने पर एक अपवाद फेंका जाता है | कोई पासवर्ड प्रदान नहीं किया गया, या यह लोड शुरू होने के बाद प्रदान किया गया | LoadOptions(password) पास करें (या LoadOptions इंस्टेंस पर Password सेट करें) Document कंस्ट्रक्टर ओवरलोड को जो LoadOptions को स्वीकार करता है |
| लोड किए गए टेक्स्ट फ़ाइल में अग्रणी/अंतिम whitespace अपेक्षित रूप से संभाला नहीं जाता है | डिफ़ॉल्ट TxtLeadingSpacesOptions/TxtTrailingSpacesOptions व्यवहार स्रोत फ़ाइल की whitespace परंपराओं से मेल नहीं खाता | स्पष्ट रूप से TxtLoadOptions.LeadingSpacesOptions / TrailingSpacesOptions सेट करें |
| Markdown लाइन ब्रेक्स अपेक्षित पैराग्राफ संरचना से मेल नहीं खाते हैं | MarkdownLoadOptions.PreserveEmptyLines या SoftLineBreakCharacter स्रोत Markdown की परंपराओं से मेल नहीं खाते हैं | लोड करने से पहले संबंधित MarkdownLoadOptions प्रॉपर्टी को समायोजित करें |
| बाहरी संसाधन लोडिंग न तो देखी जा सकती है और न ही नियंत्रित की जा सकती है | कोई IResourceLoadingCallback LoadOptions.ResourceLoadingCallback पर पंजीकृत नहीं था | लोड करने से पहले IResourceLoadingCallback को लागू करें और इसे असाइन करें |
FAQ
मैं पासवर्ड-सुरक्षित दस्तावेज़ को कैसे लोड करूँ?
पासवर्ड के साथ LoadOptions बनाएं — new LoadOptions(password) — या LoadOptions.Password सेट करें, फिर इसे new Document(fileName, loadOptions) या new Document(stream, loadOptions) को पास करें।
क्या मुझे फ़ॉर्मेट-विशिष्ट LoadOptions सबक्लास की आवश्यकता है, या बेस क्लास ही पर्याप्त है?
बेस LoadOptions क्लास प्रत्येक फॉर्मेट (पासवर्ड, एन्कोडिंग, कॉलबैक्स) के लिए सामान्य सेटिंग्स को कवर करती है। जब आपको उस फॉर्मेट के लिए विशेष सेटिंग्स चाहिए, जैसे टेक्स्ट फ़ाइलों के लिए व्हाइटस्पेस हैंडलिंग या मार्कडाउन के लिए लाइन-ब्रेक कन्वेंशन, तो TxtLoadOptions या MarkdownLoadOptions जैसे फॉर्मेट-विशिष्ट सबक्लास का उपयोग करें।
लोडिंग के दौरान दस्तावेज़ द्वारा संदर्भित संसाधनों को मैं कैसे इंटरसेप्ट या रीडायरेक्ट करूँ?
लोड करने से पहले IResourceLoadingCallback को इम्प्लीमेंट करें और उसे LoadOptions.ResourceLoadingCallback को असाइन करें। कॉलबैक प्रत्येक संसाधन के लिए एक ResourceLoadingArgs प्राप्त करता है और एक ResourceLoadingAction लौटाता है जो तय करता है कि लोडर कैसे आगे बढ़ेगा।
लोड किए गए दस्तावेज़ के लिए Aspose.Words FOSS कौन सी भाषा मानता है, इसे मैं कैसे नियंत्रित करूँ?
लोड करने से पहले LoadOptions.LanguagePreferences.DefaultEditingLanguage को एक EditingLanguage मान पर सेट करें; AddEditingLanguage/AddEditingLanguages का उपयोग करके दस्तावेज़ में हो सकने वाली अतिरिक्त भाषाओं को रजिस्टर करें।
यदि लोडर को एक खराब स्वरूपित दस्तावेज़ मिलता है तो क्या होता है?
व्यवहार LoadOptions.RecoveryMode द्वारा नियंत्रित होता है, जो एक DocumentRecoveryMode मान है और यह निर्धारित करता है कि स्रोत दस्तावेज़ में संरचनात्मक समस्याओं पर लोडर कैसे प्रतिक्रिया देता है।
API Reference सारांश
| क्लास/मेथड | विवरण |
|---|---|
LoadOptions | दस्तावेज़ को लोड करने के तरीके को नियंत्रित करने वाला बेस विकल्प ऑब्जेक्ट |
Document(fileName, loadOptions) / Document(stream, loadOptions) | लोडिंग के दौरान LoadOptions लागू करने वाले कंस्ट्रक्टर ओवरलोड्स |
TxtLoadOptions | प्लेन-टेक्स्ट दस्तावेज़ों के लिए विशिष्ट लोड विकल्प |
MarkdownLoadOptions | Markdown दस्तावेज़ों के लिए विशिष्ट लोड विकल्प |
IResourceLoadingCallback | लोड के दौरान बाहरी संसाधन समाधान को इंटरसेप्ट करने के लिए Callback interface |
ResourceLoadingArgs / ResourceLoadingAction | प्रति-रिसोर्स इवेंट डेटा और लोडर को लौटाया गया कार्य |
LanguagePreferences | लोड होने पर मानक और अतिरिक्त संपादन भाषाओं को कॉन्फ़िगर करता है |
DocumentDirection | टेक्स्ट प्रवाह दिशा को नियंत्रित करने वाला एनीम (LeftToRight, RightToLeft, Auto) |
DocumentRecoveryMode | जब कोई दस्तावेज़ विकृत हो तो लोडर के व्यवहार को नियंत्रित करता है |