वर्ड दस्तावेज़ में बुकमार्क किया गया टेक्स्ट जोड़ें

परिचय

नमस्ते! क्या आपने कभी वर्ड डॉक्यूमेंट में बुकमार्क किए गए सेक्शन से टेक्स्ट जोड़ने की कोशिश की है और पाया है कि यह मुश्किल है? आप किस्मतवाले हैं! यह ट्यूटोरियल आपको .NET के लिए Aspose.Words का उपयोग करके प्रक्रिया के बारे में बताएगा। हम इसे सरल चरणों में विभाजित करेंगे ताकि आप आसानी से उसका अनुसरण कर सकें। आइए शुरू करें और बुकमार्क किए गए टेक्स्ट को एक प्रो की तरह जोड़ें!

आवश्यक शर्तें

आरंभ करने से पहले, आइए सुनिश्चित करें कि आपके पास वह सब कुछ है जो आपको चाहिए:

  • Aspose.Words for .NET: सुनिश्चित करें कि आपने इसे इंस्टॉल किया है। यदि नहीं, तो आप कर सकते हैंयहाँ पर डाउनलोड करो.
  • विकास वातावरण: कोई भी .NET विकास वातावरण जैसे विजुअल स्टूडियो.
  • C# का बुनियादी ज्ञान: बुनियादी C# प्रोग्रामिंग अवधारणाओं को समझने से मदद मिलेगी।
  • बुकमार्क के साथ वर्ड दस्तावेज़: बुकमार्क के साथ एक वर्ड दस्तावेज़, जिसका उपयोग हम पाठ जोड़ने के लिए करेंगे।

नामस्थान आयात करें

सबसे पहले, आइए आवश्यक नेमस्पेस को आयात करें। इससे यह सुनिश्चित हो जाएगा कि हमारे पास सभी आवश्यक उपकरण हमारी उंगलियों पर हैं।

using System;
using Aspose.Words;
using Aspose.Words.Importing;

आइये इस उदाहरण को विस्तृत चरणों में विभाजित करें।

चरण 1: दस्तावेज़ लोड करें और वैरिएबल आरंभ करें

ठीक है, आइए अपना वर्ड डॉक्यूमेंट लोड करके और आवश्यक वेरिएबल्स को इनिशियलाइज़ करके शुरू करें।

// स्रोत और गंतव्य दस्तावेज़ लोड करें.
Document srcDoc = new Document("source.docx");
Document dstDoc = new Document("destination.docx");

// दस्तावेज़ आयातक को आरंभ करें.
NodeImporter importer = new NodeImporter(srcDoc, dstDoc, ImportFormatMode.KeepSourceFormatting);

// स्रोत दस्तावेज़ में बुकमार्क ढूंढें.
Bookmark srcBookmark = srcDoc.Range.Bookmarks["YourBookmarkName"];

चरण 2: आरंभ और अंतिम पैराग्राफ़ की पहचान करें

अब, आइए उन पैराग्राफ़ों का पता लगाएं जहां बुकमार्क शुरू और खत्म होता है। यह महत्वपूर्ण है क्योंकि हमें इन सीमाओं के भीतर पाठ को संभालना होगा।

// यह वह पैराग्राफ है जिसमें बुकमार्क की शुरुआत होती है।
Paragraph startPara = (Paragraph)srcBookmark.BookmarkStart.ParentNode;

// यह वह पैराग्राफ है जिसमें बुकमार्क का अंत होता है।
Paragraph endPara = (Paragraph)srcBookmark.BookmarkEnd.ParentNode;

if (startPara == null || endPara == null)
    throw new InvalidOperationException("Parent of the bookmark start or end is not a paragraph, cannot handle this scenario yet.");

चरण 3: पैराग्राफ पैरेंट्स को मान्य करें

हमें यह सुनिश्चित करना होगा कि आरंभ और अंत के पैराग्राफ़ एक ही हों। यह चीज़ों को सीधा रखने के लिए एक सरल परिदृश्य है।

// अपने आप को एक सरल परिदृश्य तक सीमित रखें।
if (startPara.ParentNode != endPara.ParentNode)
    throw new InvalidOperationException("Start and end paragraphs have different parents, cannot handle this scenario yet.");

चरण 4: रोकने के लिए नोड की पहचान करें

इसके बाद, हमें वह नोड निर्धारित करना होगा जहाँ हम टेक्स्ट कॉपी करना बंद करेंगे। यह अंतिम पैराग्राफ़ के तुरंत बाद का नोड होगा।

// हम आरंभिक पैराग्राफ से लेकर अंतिम पैराग्राफ तक (और उसमें सम्मिलित) सभी पैराग्राफों को कॉपी करना चाहते हैं,
// इसलिए जिस नोड पर हम रुकते हैं वह अंतिम पैराग्राफ के बाद एक है।
Node endNode = endPara.NextSibling;

चरण 5: बुकमार्क किए गए टेक्स्ट को गंतव्य दस्तावेज़ में जोड़ें

अंत में, आइए आरंभिक पैराग्राफ से अंतिम पैराग्राफ के बाद के नोड तक के नोड्स को लूप करें, और उन्हें गंतव्य दस्तावेज़ में जोड़ दें।

for (Node curNode = startPara; curNode != endNode; curNode = curNode.NextSibling)
{
    // यह वर्तमान नोड की एक प्रतिलिपि बनाता है और उसे संदर्भ में आयात करता है (इसे वैध बनाता है)
    // गंतव्य दस्तावेज़ का। आयात करने का अर्थ है शैलियों और सूची पहचानकर्ताओं को सही ढंग से समायोजित करना।
    Node newNode = importer.ImportNode(curNode, true);

    // आयातित नोड को गंतव्य दस्तावेज़ में जोड़ें.
    dstDoc.FirstSection.Body.AppendChild(newNode);
}

// गंतव्य दस्तावेज़ को संलग्न पाठ के साथ सहेजें.
dstDoc.Save("appended_document.docx");

निष्कर्ष

और अब यह हो गया! आपने .NET के लिए Aspose.Words का उपयोग करके Word दस्तावेज़ में बुकमार्क किए गए अनुभाग से सफलतापूर्वक टेक्स्ट जोड़ दिया है। यह शक्तिशाली उपकरण दस्तावेज़ में हेरफेर को आसान बनाता है, और अब आपके पास एक और तरकीब है। हैप्पी कोडिंग!

अक्सर पूछे जाने वाले प्रश्न

क्या मैं एक बार में एकाधिक बुकमार्क्स से पाठ जोड़ सकता हूँ?

हां, आप प्रत्येक बुकमार्क के लिए प्रक्रिया को दोहरा सकते हैं और तदनुसार पाठ जोड़ सकते हैं।

यदि आरंभिक और अंतिम पैराग्राफ के मूल अलग-अलग हों तो क्या होगा?

वर्तमान उदाहरण में यह माना गया है कि उनके माता-पिता एक ही हैं। अलग-अलग माता-पिता के लिए, अधिक जटिल हैंडलिंग की आवश्यकता होती है।

क्या मैं संलग्न पाठ का मूल स्वरूप रख सकता हूँ?

बिलकुल!ImportFormatMode.KeepSourceFormatting यह सुनिश्चित करता है कि मूल स्वरूपण सुरक्षित रहे.

क्या गंतव्य दस्तावेज़ में किसी विशिष्ट स्थान पर पाठ जोड़ना संभव है?

हां, आप गंतव्य दस्तावेज़ में वांछित नोड पर नेविगेट करके किसी भी स्थान पर पाठ जोड़ सकते हैं।

यदि मुझे किसी बुकमार्क से पाठ को किसी नए अनुभाग में जोड़ना हो तो क्या होगा?

आप गंतव्य दस्तावेज़ में एक नया अनुभाग बना सकते हैं और वहां पाठ जोड़ सकते हैं।