पीडीएफ फाइल में पृष्ठ क्षेत्र से पाठ निकालें
परिचय
पीडीएफ के साथ काम करने के लिए अक्सर विशिष्ट सामग्री निकालने की आवश्यकता होती है, चाहे वह फॉर्म, टेबल या दस्तावेज़ के कुछ अनुभागों से डेटा खींचना हो। इस ट्यूटोरियल में, हम .NET के लिए Aspose.PDF का उपयोग करके PDF के किसी विशिष्ट क्षेत्र से टेक्स्ट निकालने का तरीका जानेंगे। पूरे दस्तावेज़ को छानने के बजाय, हम ठीक से पता लगाएंगे कि टेक्स्ट कहाँ रहता है और इसे कुशलतापूर्वक निकालेंगे।
आवश्यक शर्तें
इससे पहले कि हम कोड में प्रवेश करें, सुनिश्चित करें कि आपके पास निम्नलिखित चीजें मौजूद हैं:
- .NET के लिए Aspose.PDF: यदि आपने पहले से ऐसा नहीं किया है, तो .NET लाइब्रेरी के लिए Aspose.PDF डाउनलोड और इंस्टॉल करें।.NET के लिए Aspose.PDF डाउनलोड करें.
- IDE: विजुअल स्टूडियो जैसा कोई भी .NET विकास वातावरण।
- .NET फ्रेमवर्क: सुनिश्चित करें कि आपका प्रोजेक्ट उपयुक्त .NET फ्रेमवर्क के साथ सेटअप किया गया है।
- पीडीएफ दस्तावेज़: एक नमूना पीडीएफ जिसमें से हम पाठ निकालेंगे।
यह मत भूलिए कि आप ऐसा कर सकते हैंनिःशुल्क परीक्षण प्राप्त करें Aspose.PDF का या उपयोग करेंअस्थायी लाइसेंस पूर्ण कार्यक्षमता के लिए.
आवश्यक पैकेज आयात करना
.NET के लिए Aspose.PDF के साथ काम करना शुरू करने के लिए, आपको अपने प्रोजेक्ट में आवश्यक नेमस्पेस आयात करने की आवश्यकता है। ये पैकेज PDF दस्तावेज़ों को संभालने के लिए आवश्यक क्लास और विधियाँ प्रदान करते हैं।
using System.IO;
using Aspose.Pdf;
using Aspose.Pdf.Text;
using System;
चरण 1: दस्तावेज़ निर्देशिका सेट करना और पीडीएफ लोड करना
पहला कदम यह निर्दिष्ट करना है कि आपकी पीडीएफ फाइल कहाँ स्थित है और इसे अपने प्रोजेक्ट में लोड करें। आप जिस पीडीएफ फाइल के साथ काम करना चाहते हैं, उसके लिए आप स्थानीय निर्देशिका पथ का उपयोग कर सकते हैं।
// दस्तावेज़ निर्देशिका का पथ.
string dataDir = "YOUR DOCUMENT DIRECTORY";
// पीडीएफ दस्तावेज़ खोलें
Document pdfDocument = new Document(dataDir + "ExtractTextAll.pdf");
यह चरण सुनिश्चित करता है कि पीडीएफ फाइल ठीक से लोड हो गई है और उस पर काम करने के लिए तैयार है।Document
Aspose.PDF लाइब्रेरी से क्लास आपको पीडीएफ फाइल में हेरफेर करने की अनुमति देता है।
चरण 2: निष्कर्षण के लिए टेक्स्ट अवशोषक को आरंभ करें
इस चरण में, हम एक बनाते हैंTextAbsorber
ऑब्जेक्ट, जिसे पीडीएफ दस्तावेज़ से टेक्स्ट निकालने के लिए डिज़ाइन किया गया है।TextAbsorber
लचीला है और इसे विशिष्ट क्षेत्रों या पृष्ठों पर ध्यान केंद्रित करने के लिए अनुकूलित किया जा सकता है।
// टेक्स्ट निकालने के लिए TextAbsorber ऑब्जेक्ट बनाएँ
TextAbsorber absorber = new TextAbsorber();
TextAbsorber
क्लास एक शक्तिशाली उपकरण है जो आपके द्वारा निर्दिष्ट सीमाओं के भीतर सभी पाठ को कैप्चर करता है।
चरण 3: वह क्षेत्र निर्धारित करें जहां से पाठ निकालना है
यहाँ जादू होता है। पूरे पेज से टेक्स्ट खींचने के बजाय, हम निष्कर्षण को पेज के एक विशिष्ट आयताकार क्षेत्र तक सीमित कर सकते हैं। यह तब सही होता है जब आपको पता हो कि आपकी सामग्री कहाँ स्थित है।
// पाठ निष्कर्षण को किसी विशिष्ट क्षेत्र तक सीमित करें
absorber.TextSearchOptions.LimitToPageBounds = true;
absorber.TextSearchOptions.Rectangle = new Aspose.Pdf.Rectangle(100, 200, 250, 350);
Rectangle
ऑब्जेक्ट आपको उस क्षेत्र के निर्देशांक (बिंदुओं में) को परिभाषित करने की अनुमति देता है जहां से पाठ निकाला जाएगा।TextSearchOptions.LimitToPageBounds
यह सुनिश्चित करता है कि केवल निर्दिष्ट आयत के भीतर का पाठ ही निकाला जाए.
चरण 4: इच्छित पृष्ठ पर अवशोषक को स्वीकार करें
क्षेत्र की स्थापना के बाद, अगला कदम स्वीकार करना हैTextAbsorber
उस विशिष्ट पृष्ठ के लिए जिससे आप टेक्स्ट निकालना चाहते हैं। यहाँ, हम PDF के पहले पृष्ठ पर ध्यान केंद्रित करेंगे।
// प्रथम पृष्ठ के लिए अवशोषक स्वीकार करें
pdfDocument.Pages[1].Accept(absorber);
फोन करकेAccept
पृष्ठ पर विधि, हम Aspose.PDF को अवशोषक चलाने और निर्धारित क्षेत्र से पाठ इकट्ठा करने का निर्देश देते हैं।
चरण 5: निकाले गए पाठ को पुनः प्राप्त करें और संग्रहीत करें
एक बार अवशोषक ने अपना काम पूरा कर लिया, तो निकाले गए पाठ को इकट्ठा करने और उसे सहेजने का समय आ गया है। इस चरण में पाठ को पुनः प्राप्त करना और उसे एक फ़ोल्डर में लिखना शामिल है।.txt
फ़ाइल।
// निकाला गया पाठ प्राप्त करें
string extractedText = absorber.Text;
// निकाले गए पाठ को सहेजने के लिए एक लेखक बनाएँ
TextWriter tw = new StreamWriter(dataDir + "extracted-text.txt");
// फ़ाइल में पाठ लिखें
tw.WriteLine(extractedText);
// स्ट्रीम बंद करें
tw.Close();
यहाँ,TextWriter
क्लास का उपयोग निकाले गए टेक्स्ट को टेक्स्ट फ़ाइल में लिखने के लिए किया जाता है। यह सुनिश्चित करता है कि आपकी निकाली गई सामग्री बाद में उपयोग के लिए सुरक्षित रूप से संग्रहीत है।
निष्कर्ष
PDF दस्तावेज़ के भीतर किसी विशिष्ट क्षेत्र से टेक्स्ट निकालना अविश्वसनीय रूप से उपयोगी हो सकता है, खासकर जब फ़ॉर्म या तालिकाओं जैसी संरचित सामग्री से निपटना हो। .NET के लिए Aspose.PDF का उपयोग करके, आप कोड की कुछ पंक्तियों के साथ इस कार्य को पूरा कर सकते हैं। किसी क्षेत्र को परिभाषित करके, किसी फ़ाइल को आरंभीकृत करके, किसी फ़ाइल को एक फ़ाइल में परिवर्तित …TextAbsorber
, और निकाले गए पाठ को सहेजने से, आपके पास इस बात पर पूर्ण नियंत्रण होता है कि आपके पीडीएफ से क्या निकाला जाएगा।
चाहे आप किसी छोटे प्रोजेक्ट पर काम कर रहे हों या बड़े दस्तावेज़ों का प्रबंधन कर रहे हों, यह विधि पूरे दस्तावेज़ को खंगाले बिना आपके PDF से प्रासंगिक डेटा निकालने का एक कुशल तरीका प्रदान करती है।
अक्सर पूछे जाने वाले प्रश्न
क्या मैं एक साथ कई पृष्ठों से पाठ निकाल सकता हूँ?
हाँ, पुनरावृत्ति करकेPages
का संग्रहpdfDocument
, आप आवेदन कर सकते हैंTextAbsorber
एकाधिक पृष्ठों पर.
यदि पाठ पीडीएफ के किसी भिन्न क्षेत्र में हो तो क्या होगा?
आप आसानी से समायोजित कर सकते हैंRectangle
उस क्षेत्र से मिलान करने के लिए निर्देशांक जहां आपका पाठ स्थित है।
क्या यह स्कैन किये गये PDF के साथ काम करता है?
नहीं, स्कैन की गई PDF को छवियों को टेक्स्ट में बदलने के लिए OCR (ऑप्टिकल कैरेक्टर रिकॉग्निशन) की आवश्यकता होती है। Aspose.PDF OCR सुविधाएँ भी प्रदान करता है।
क्या विशिष्ट कीवर्ड के आधार पर पाठ निकालने का कोई तरीका है?
हां, आप उपयोग कर सकते हैंTextFragmentAbsorber
कीवर्ड-आधारित पाठ निष्कर्षण के लिए.
मैं एन्क्रिप्टेड पीडीएफ से टेक्स्ट कैसे निकालूं?
आपको पहले सही पासवर्ड देकर पीडीएफ को डिक्रिप्ट करना होगा, फिर टेक्स्ट निष्कर्षण के साथ आगे बढ़ना होगा।