जावा पीडीएफ टेबल एक्सट्रैक्शन कैसे करें GroupDocs.Parser के साथ

PDF फ़ाइलों से टेबल निकालना एक सामान्य आवश्यकता है जब आपको स्थिर दस्तावेज़ों को संरचित डेटा में बदलना होता है। इस ट्यूटोरियल में आप GroupDocs.Parser लाइब्रेरी for Java का उपयोग करके PDFs से टेबल कैसे निकालें सीखेंगे। हम पर्यावरण सेटअप, टेबल‑लेआउट कॉन्फ़िगरेशन, और pdf टेबल्स को csv में एक्सपोर्ट कैसे करें, इस पर चर्चा करेंगे। अंत तक, आप किसी भी Java‑आधारित डेटा पाइपलाइन में मजबूत टेबल एक्सट्रैक्शन को एकीकृत कर सकेंगे।

त्वरित उत्तर

  • मुख्य लाइब्रेरी कौन सी है? GroupDocs.Parser for Java
  • क्या मैं स्कैन किए गए PDFs से टेबल निकाल सकता हूँ? केवल OCR के बाद; नीचे “extract tables scanned pdf” नोट देखें
  • क्या मुझे लाइसेंस चाहिए? विकास के लिए ट्रायल लाइसेंस काम करता है; उत्पादन के लिए पूर्ण लाइसेंस आवश्यक है
  • कौन सा Java संस्करण आवश्यक है? Java 8 या उससे ऊपर
  • क्या बैच प्रोसेसिंग समर्थित है? हाँ – API बड़े‑पैमाने पर एक्सट्रैक्शन के लिए अनुकूलित है

जावा पीडीएफ टेबल एक्सट्रैक्शन क्या है?

जावा पीडीएफ टेबल एक्सट्रैक्शन वह प्रक्रिया है जिसमें प्रोग्रामेटिक रूप से PDF के भीतर तालिका संरचनाओं को ढूँढा जाता है, सेल सीमाओं की व्याख्या की जाती है, और टेक्स्ट को CSV या Excel जैसे मशीन‑रीडेबल फॉर्मेट में प्राप्त किया जाता है। यह डाउनस्ट्रीम एनालिटिक्स, रिपोर्टिंग, या माइग्रेशन कार्यों को मैन्युअल कॉपी‑पेस्टिंग के बिना सक्षम बनाता है।

जावा पीडीएफ टेबल एक्सट्रैक्शन के लिए GroupDocs.Parser क्यों उपयोग करें?

GroupDocs.Parser 50 + इनपुट और आउटपुट फ़ॉर्मेट्स के लिए सटीक लेआउट डिटेक्शन प्रदान करता है और कई‑सौ पृष्ठों वाले PDFs को प्रोसेस कर सकता है जबकि मेमोरी उपयोग 200 MB से कम रखता है। यह बैच जॉब्स का समर्थन करता है, एक सरल Maven डिपेंडेंसी प्रदान करता है, और स्कैन किए गए दस्तावेज़ परिदृश्यों के लिए GroupDocs OCR के साथ सहजता से एकीकृत होता है।

पूर्वापेक्षाएँ

शुरू करने से पहले, सुनिश्चित करें कि आपके पास निम्नलिखित हैं:

  • Java 8+ स्थापित और आपके IDE या बिल्ड टूल में कॉन्फ़िगर किया हुआ।
  • Maven डिपेंडेंसी मैनेजमेंट के लिए।
  • GroupDocs.Parser लाइसेंस (ट्रायल या पूर्ण) तक पहुँच।

आवश्यक लाइब्रेरी और डिपेंडेंसियाँ

आपको आवश्यकता होगी:

  • GroupDocs.Parser for Java लाइब्रेरी (संस्करण 25.5 या बाद का)।
  • डिपेंडेंसी मैनेजमेंट के लिए आपके सिस्टम पर Maven स्थापित हो।

पर्यावरण सेटअप

सुनिश्चित करें कि आपका विकास पर्यावरण Java (Java 8 या उससे ऊपर) के संगत संस्करण के साथ सेट है।

ज्ञान पूर्वापेक्षाएँ

Java प्रोग्रामिंग की बुनियादी समझ और Java में फ़ाइलों को संभालने की परिचितता उपयोगी होगी।

Java के लिए GroupDocs.Parser सेटअप

GroupDocs.Parser का उपयोग शुरू करने के लिए, इसे अपने प्रोजेक्ट में निम्नलिखित रूप में एकीकृत करें:

Maven सेटअप
pom.xml फ़ाइल में निम्नलिखित कॉन्फ़िगरेशन जोड़ें ताकि GroupDocs.Parser को डिपेंडेंसी के रूप में शामिल किया जा सके:

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/parser/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-parser</artifactId>
      <version>25.5</version>
   </dependency>
</dependencies>

सीधा डाउनलोड
वैकल्पिक रूप से, GroupDocs.Parser for Java का नवीनतम संस्करण GroupDocs releases से डाउनलोड करें।

लाइसेंस प्राप्ति

एक मुफ्त ट्रायल से शुरू करें, एक अस्थायी लाइसेंस प्राप्त करें, या पूर्ण लाइसेंस खरीदें। विवरण के लिए GroupDocs licensing page देखें।

बुनियादी इनिशियलाइज़ेशन और सेटअप

अपने Java एप्लिकेशन में GroupDocs.Parser को निम्नलिखित रूप में इनिशियलाइज़ करें:

import com.groupdocs.parser.Parser;

public class DocumentParser {
    public static void main(String[] args) {
        final String filePath = "YOUR_DOCUMENT_DIRECTORY/SampleInvoicePagesPdf.pdf";
        try (Parser parser = new Parser(filePath)) {
            // Ready to perform operations on the document
        } catch (Exception e) {
            System.err.println("Error creating Parser instance: " + e.getMessage());
        }
    }
}

कार्यान्वयन गाइड

आइए प्रत्येक फीचर को देखें जिसे आपको PDF से टेबल कैसे निकालें में महारत हासिल करने के लिए जानना है।

फीचर 1: GroupDocs के साथ दस्तावेज़ पार्सिंग

सारांश
PDF दस्तावेज़ के साथ इंटरैक्ट करने के लिए, Parser क्लास का एक इंस्टेंस बनाएं।
Parser GroupDocs.Parser में PDF सामग्री पढ़ने के लिए एंट्री पॉइंट क्लास है। यह दस्तावेज़ पर विभिन्न ऑपरेशन्स को सक्षम करता है।

Parser इंस्टेंस बनाना
Parser क्लास GroupDocs.Parser में PDF सामग्री पढ़ने के लिए एंट्री पॉइंट है। यह दस्तावेज़ को मेमोरी में लोड करता है और टेक्स्ट, टेबल और अन्य संरचनाओं को निकालने के लिए मेथड्स प्रदान करता है।

import com.groupdocs.parser.Parser;

public class CreateParserInstance {
    public static void main(String[] args) {
        final String filePath = "YOUR_DOCUMENT_DIRECTORY/SampleInvoicePagesPdf.pdf";
        try (Parser parser = new Parser(filePath)) {
            // Document is ready for operations
        } catch (Exception e) {
            System.err.println("Error creating Parser instance: " + e.getMessage());
        }
    }
}

फीचर 2: टेबल एक्सट्रैक्शन क्षमता जांच

सारांश
टेबल निकालने से पहले, यह सत्यापित करें कि PDF टेबल एक्सट्रैक्शन का समर्थन करता है।

टेबल समर्थन की जाँच
hasTables() मेथड एक बूलियन लौटाता है जो दर्शाता है कि लोड किया गया PDF पहचान योग्य टेबल डेटा रखता है या नहीं।
hasTables() जाँचता है कि दस्तावेज़ में कोई टेबल है या नहीं।

import com.groupdocs.parser.Parser;

public class CheckTableSupport {
    public static void main(String[] args) {
        final String filePath = "YOUR_DOCUMENT_DIRECTORY/SampleInvoicePagesPdf.pdf";
        try (Parser parser = new Parser(filePath)) {
            boolean isTablesSupported = parser.getFeatures().isTables();
            
            if (!isTablesSupported) {
                System.out.println("Document doesn't support tables extraction.");
            }
        } catch (Exception e) {
            System.err.println("Error checking table extraction capability: " + e.getMessage());
        }
    }
}

फीचर 3: टेबल लेआउट कॉन्फ़िगरेशन

सारांश
टेबल के लेआउट को कॉन्फ़िगर करने से डेटा एक्सट्रैक्शन की सटीकता बढ़ सकती है।

टेबल लेआउट सेटअप
TemplateTableLayout अपेक्षित कॉलम चौड़ाई और पंक्ति ऊँचाई को परिभाषित करता है।
TemplateTableLayout टेबल डिटेक्शन के लिए कस्टम कॉलम चौड़ाई और पंक्ति ऊँचाई निर्दिष्ट करता है। इन मानों को समायोजित करने से इंजन सेल सीमाओं को विज़ुअल ग्रिड के साथ संरेखित करने में मदद करता है।

import com.groupdocs.parser.templates.TemplateTableLayout;
import java.util.Arrays;

public class ConfigureTableLayout {
    public static void main(String[] args) {
        final double[] columnWidths = {50.0, 95.0, 275.0, 415.0, 485.0, 545.0};
        final double[] rowHeights = {325.0, 340.0, 365.0, 395.0};

        TemplateTableLayout layout = new TemplateTableLayout(
                Arrays.asList(columnWidths), 
                Arrays.asList(rowHeights));
    }
}

फीचर 4: टेबल एक्सट्रैक्शन विकल्प सेटअप

सारांश
एक्सट्रैक्शन की सटीकता सुधारने के लिए विशिष्ट कॉन्फ़िगरेशन के साथ टेबल निकालने के विकल्प सेट करें।

एक्सट्रैक्शन विकल्प कॉन्फ़िगर करना
TableExtractionOptions आपको यह निर्दिष्ट करने देता है कि हेडर पंक्तियों को शामिल करना है, सेल्स को मर्ज करना है, या खाली पंक्तियों को अनदेखा करना है।
TableExtractionOptions एक्सट्रैक्शन व्यवहार को कॉन्फ़िगर करता है जैसे हेडर शामिल करना या सेल्स को मर्ज करना।

import com.groupdocs.parser.options.PageTableAreaOptions;
import com.groupdocs.parser.templates.TemplateTableLayout;

public class SetExtractionOptions {
    public static void main(String[] args) {
        TemplateTableLayout layout = new TemplateTableLayout(
                Arrays.asList(new Double[]{50.0, 95.0, 275.0, 415.0, 485.0, 545.0}), 
                Arrays.asList(new Double[]{325.0, 340.0, 365.0, 395.0}));

        PageTableAreaOptions options = new PageTableAreaOptions(layout);
    }
}

फीचर 5: दस्तावेज़ से टेबल निकालना

सारांश
कॉन्फ़िगर किए गए विकल्पों का उपयोग करके टेबल निकालें और आवश्यकता अनुसार प्रोसेस करें।

एक्सट्रैक्शन प्रक्रिया
getTables() मेथड Table ऑब्जेक्ट्स का एक संग्रह लौटाता है, प्रत्येक अनुरोधित पृष्ठों पर पहचानी गई टेबल का प्रतिनिधित्व करता है।
getTables() दस्तावेज़ से सभी पहचानी गई टेबल्स को प्राप्त करता है।
Table पंक्तियों और सेल्स के साथ एकल निकाली गई टेबल का प्रतिनिधित्व करता है।

import com.groupdocs.parser.Parser;
import com.groupdocs.parser.options.PageTableAreaOptions;
import com.groupdocs.parser.data.PageTableArea;

public class ExtractTables {
    public static void main(String[] args) {
        final String filePath = "YOUR_DOCUMENT_DIRECTORY/SampleInvoicePagesPdf.pdf";
        PageTableAreaOptions options = new PageTableAreaOptions(/* layout from previous feature */);

        try (Parser parser = new Parser(filePath)) {
            Iterable<PageTableArea> tables = parser.getTables(options);
            
            for (PageTableArea table : tables) {
                // Process each table as needed
            }
        } catch (Exception e) {
            System.err.println("Error extracting tables: " + e.getMessage());
        }
    }
}

फीचर 6: टेबल पंक्तियों और कॉलम्स पर इटरेशन

सारांश
एक्सट्रैक्शन के बाद, व्यक्तिगत सेल्स तक पहुँचने के लिए पंक्तियों और कॉलम्स पर इटरेट करें।

इटरेट करें और सेल्स तक पहुँचें
प्रत्येक Table getRows() प्रदान करता है और प्रत्येक Row getCells() प्रदान करता है। आप getText() के माध्यम से सेल टेक्स्ट पढ़ सकते हैं और इसे CSV या किसी अन्य फ़ॉर्मेट में लिख सकते हैं।
Row Table के भीतर एकल पंक्ति का प्रतिनिधित्व करता है।
getRows() टेबल में पंक्तियों की सूची लौटाता है।
getCells() पंक्ति के सेल्स को लौटाता है।
getText() सेल की टेक्स्टुअल सामग्री प्राप्त करता है।

import com.groupdocs.parser.data.PageTableArea;
import com.groupdocs.parser.data.PageTableAreaCell;

public class IterateTables {
    public static void main(String[] args) {
        PageTableArea table = /* reference to a specific PageTableArea object */;

        for (int row = 0; row < table.getRowCount(); row++) {
            for (int column = 0; column < table.getColumnCount(); column++) {
                PageTableAreaCell cell = table.getCell(row, column);
                if (cell != null) {
                    // Process the cell text as needed
                }
            }
        }
    }
}

सामान्य समस्याएँ और समाधान

IssueWhy it happensPro tip
कोई टेबल नहीं मिलीPDF स्कैन किया गया है (इमेज‑आधारित)पहले OCR चलाएँ या पार्सिंग से पहले GroupDocs OCR का उपयोग करें।
गलत कॉलम संरेखणलेआउट कोऑर्डिनेट्स गलत हैंTemplateTableLayout मानों को विज़ुअल ग्रिड से मिलाने के लिए फाइन‑ट्यून करें।
बड़े PDFs पर मेमोरी स्पाइकParser पूरे दस्तावेज़ को मेमोरी में लोड करता हैपृष्ठों को बैच में प्रोसेस करें और प्रत्येक बैच के बाद Parser को बंद करें।

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

1. क्या मैं स्कैन किए गए PDFs से टेबल निकाल सकता हूँ या केवल डिजिटल PDFs से?

उत्तर: GroupDocs.Parser मुख्यतः डिजिटल, चयन योग्य PDFs के साथ काम करता है जिनमें एम्बेडेड टेक्स्ट होता है। स्कैन किए गए PDFs के लिए, आपको पहले OCR चलाना होगा—या तो GroupDocs OCR के साथ या किसी अन्य OCR इंजन के साथ—ताकि टेक्स्ट खोज योग्य बन सके टेबल एक्सट्रैक्शन से पहले।

2. जटिल लेआउट या मर्ज्ड सेल्स वाली टेबल्स को मैं कैसे संभालूँ?

उत्तर: TemplateTableLayout को सटीक कॉलम और पंक्ति कोऑर्डिनेट्स के साथ कस्टमाइज़ करें, या TableExtractionOptions में mergeCells फ़्लैग को सक्षम करें। मर्ज्ड क्षेत्रों की सही व्याख्या के लिए पोस्ट‑प्रोसेसिंग आवश्यक हो सकती है।

3. क्या GroupDocs.Parser बड़े दस्तावेज़ों या बैच प्रोसेसिंग के लिए उपयुक्त है?

उत्तर: हाँ। लाइब्रेरी हाई‑थ्रूपुट परिदृश्यों के लिए बनाई गई है और सैकड़ों पृष्ठों वाले PDFs को प्रोसेस कर सकती है जबकि मेमोरी खपत कम रखती है। पेज‑रेंज विकल्पों का उपयोग करें और प्रत्येक बैच के बाद Parser इंस्टेंस को डिस्पोज़ करें ताकि प्रदर्शन अधिकतम हो।

4. क्या मैं निकाली गई टेबल डेटा को CSV या Excel जैसे फ़ॉर्मेट में एक्सपोर्ट कर सकता हूँ?

उत्तर: GroupDocs.Parser कच्चा टेबल डेटा (पंक्तियों और सेल्स) लौटाता है। आप इस डेटा को OpenCSV का उपयोग करके CSV में या Apache POI का उपयोग करके Excel में आसानी से लिख सकते हैं। यह export pdf tables csv उपयोग‑केस को अतिरिक्त लाइसेंसिंग के बिना पूरा करता है।

5. क्या एक ही बार में कई पृष्ठों से टेबल निकालने का समर्थन है?

उत्तर: बिल्कुल। parser.getTables(pageOptions) को पेज रेंज के साथ कॉल करें या सभी पृष्ठों पर इटरेट करें। API पृष्ठों में टेबल्स को एकत्रित करता है, जिससे आप एकल समेकित डेटासेट बना सकते हैं।

निष्कर्ष

GroupDocs.Parser के साथ जावा पीडीएफ टेबल एक्सट्रैक्शन सरल हो जाता है। Parser को इनिशियलाइज़ करके, टेबल समर्थन की पुष्टि करके, लेआउट और एक्सट्रैक्शन विकल्पों को कॉन्फ़िगर करके, और प्राप्त Table ऑब्जेक्ट्स पर इटरेट करके, आप स्थिर PDFs को संरचित CSV या Excel फ़ाइलों में बदल सकते हैं। लाइब्रेरी का प्रदर्शन‑उन्मुख डिज़ाइन, 50 से अधिक फ़ॉर्मेट्स का समर्थन, और सहज OCR एकीकरण इसे इनवॉइस ऑटोमेशन, डेटा माइग्रेशन, और बड़े‑पैमाने के एनालिटिक्स पाइपलाइन्स के लिए आदर्श बनाता है। ऊपर बताए गए चरणों के साथ, आप किसी भी Java एप्लिकेशन में विश्वसनीय टेबल एक्सट्रैक्शन को एम्बेड करने के लिए तैयार हैं।


Last Updated: 2026-09-17
Tested With: GroupDocs.Parser 25.5 (Java)
Author: GroupDocs

संबंधित ट्यूटोरियल