Extract Table From PDF in Java

از PDF در Java جدول استخراج کنید

در گذشته نزدیک، ما یک article منتشر کردیم که در مورد نحوه استخراج متن از یک PDF فایل به صورت برنامه‌نویسی در Java است. در این پست وبلاگ، یاد خواهیم گرفت چگونه جدول را از PDF در Java با استفاده از این API Java برای PDF استخراج کنیم. این کتابخانه ویژگی‌های قدرتمندی برای تجزیه و Manipulate اسناد PDF فراهم می‌کند. علاوه بر این، می‌توانید استخراج داده را با ساخت یک استخراج‌کننده جدول PDF با استفاده از این کتابخانه خودکار کنید. با این حال، لطفاً اطمینان حاصل کنید که Java را در ماشین محلی خود نصب کرده‌اید قبل از ادامه.

نقاط زیر در این راهنما پوشش داده خواهد شد:

PDF Table Extractor - نصب API Java

فرایند نصب این کتابخانه آسان و ساده است. شما می‌توانید یا download API را دانلود کنید یا با استفاده از تنظیمات Maven زیر آن را نصب کنید.

 <repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <classifier>jdk17</classifier>
</dependency>

جدول را از PDF در Java استخراج کنید

پس از نصب API، می‌توانید شروع به نوشتن کد برای ساخت یک برنامه استخراج جدول PDF به صورت برنامه‌نویسی در Java کنید.

شما می‌توانید مراحل ذکر شده در زیر را دنبال کنید:

  1. یک شی از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید.
  2. یک نمونه از کلاس TableAbsorber را ایجاد کنید که جستجو انجام می‌دهد و به نتایج جستجو دسترسی فراهم می‌کند.
  3. Loop through the PDF document pages by calling the getPages method.
  4. متد visit را برای استخراج جدول از صفحه فراخوانی کنید.
  5. متد getTableList را فراخوانی کنید که IList فقط خواندنی را شامل می‌شود و جداول موجود را برمی‌گرداند.
  6. ردیف‌ها را با فراخوانی متد getRowList بدست آورید. از طریق لیست ردیف‌ها تکرار کنید.
  7. از طریق لیست سلول با فراخوانی متد getCellList عبور کنید.
  8. متد getTextFragments را فراخوانی کنید تا مجموعه‌ای از اشیاء TextFragment را به‌دست آورید که متن موجود در سلول را توصیف می‌کند.
  9. متد getSegments را فراخوانی کنید که بخش‌های متنی را برای TextFragment فعلی به ‌دست می‌آورد.
  10. نتایج را چاپ کنید.

کد زیر را در فایل اصلی خود کپی و پیست کنید تا داده ها را از یک جدول در PDF با استفاده از Java استخراج کنید:

String filePath = "table.pdf";
// یک شی از کلاس Document ایجاد کنید و فایل PDF منبع را بارگذاری کنید. 
Document pdfDocument = new Document(filePath);
// یک نمونه از کلاس TableAbsorber را برای انجام جستجو و ارائه دسترسی به نتایج جستجو ایجاد کنید.  
TableAbsorber absorber = new TableAbsorber();
// از طریق فراخوانی متد getPages به صفحات سند PDF گردش کنید 
for (Page page : pdfDocument.getPages()) {
    // متد visit را برای استخراج جدول از صفحه فراخوانی کنید 
        absorber.visit(page);
        // متد getTableList را فراخوانی کنید که IList فقط خواندنی حاوی جدول‌هایی که پیدا شده‌اند را برمی‌گرداند. 
       for (AbsorbedTable table : absorber.getTableList()) {
                System.out.println("Table");
                // سطرها را با فراخوانی متد getRowList بگیرید. از طریق لیست سطرها تکرار کنید.  
               for (AbsorbedRow row : table.getRowList()) {
                        // از طریق لیست سلول با فراخوانی روش getCellList عبور کنید. 
                       for (AbsorbedCell cell : row.getCellList()) {
                            // متد getTextFragments را فراخوانی کنید تا مجموعه‌ای از اشیاء TextFragment را دریافت کنید که متن موجود در سلول را توصیف می‌کند. 
                               for (TextFragment fragment : cell.getTextFragments()) {
                                        StringBuilder sb = new StringBuilder();
                                        // Invoke the getSegments method that gets text segments for current TextFragment. 
                                       for (TextSegment seg : fragment.getSegments())
                                                sb.append(seg.getText());
                                        System.out.print(sb.toString() + "|");
                                }
                        }
                        System.out.println();
                }
        }
}

یک مجوز رایگان دریافت کنید

شما می‌توانید یک مجوز موقت رایگان برای آزمایش API بدون محدودیت‌های ارزیابی دریافت کنید.

جمع‌بندی

این ما را به پایان این پست وبلاگ می‌رساند. شما یاد گرفتید که چگونه به‌صورت برنامه‌نویسی جدول را از PDF در Java استخراج کنید. این راهنما به شما کمک خواهد کرد اگر به دنبال ساخت یک استخراج‌کننده جدول PDF برای نرم‌افزار تجاری خود هستید. علاوه بر این، می‌توانید به documentation مراجعه کنید تا با دیگر ویژگی‌ها آشنا شوید.

علاوه بر این، پیشنهاد می‌کنیم راهنمای Getting Started guide ما را دنبال کنید.

سرانجام، conholdate.com در حال نوشتن پست‌های جدید وبلاگ است. بنابراین، لطفاً برای آخرین به‌روزرسانی‌ها در ارتباط باشید.

Ask a question

شما می‌توانید سوالات یا پرسش‌های خود را در forum به ما اطلاع دهید.

سوالات متداول

آیا می‌توانم جداول را از PDF استخراج کنم؟

لطفاً این link را ببینید تا مراحل و قطعه کد استخراج جدول از یک سند PDF به صورت برنامه‌نویسی در Java را بدانید.

ببینید همچنین