Java’da GroupDocs.Parser Kullanarak PDF’den Tablo Çıkarma

PDF dosyalarından tablo çıkarmak, statik belgeleri yapılandırılmış verilere dönüştürmeniz gerektiğinde sık karşılaşılan bir gereksinimdir. Bu öğreticide Java için GroupDocs.Parser kütüphanesini kullanarak PDF’lerden tablo nasıl çıkarılır göstereceğiz. Bu yaklaşımın java pdf table extraction için neden ideal olduğunu, doğru sonuçlar için düzenlerin nasıl yapılandırılacağını ve hatta daha sonra export pdf tables csv nasıl yapılacağını göreceksiniz.

Hızlı Yanıtlar

  • Ana kütüphane nedir? GroupDocs.Parser for Java
  • Tarama yapılan PDF’lerden tablo çıkarabilir miyim? Yalnızca OCR sonrası; aşağıdaki “extract tables scanned pdf” notuna bakın
  • Lisans gerekli mi? Geliştirme için deneme lisansı çalışır; üretim için tam lisans gerekir
  • Hangi Java sürümü gereklidir? Java 8 ve üzeri
  • Toplu işleme destekleniyor mu? Evet – API büyük‑ölçekli çıkarma için optimize edilmiştir

PDF bağlamında “tablo nasıl çıkarılır” ne anlama gelir?

Biz tablo nasıl çıkarılır dediğimizde, bir PDF içinde tablo yapılarını programlı olarak bulma, hücre sınırlarını yorumlama ve metin içeriğini makine‑okunabilir bir formatta (ör. CSV, Excel) elde etme sürecinden bahsediyoruz. GroupDocs.Parser düşük seviyeli PDF ayrıştırmayı soyutlayarak sizinle çalışabileceğiniz temiz bir nesne modeli sunar.

Java pdf tablo çıkarma için neden GroupDocs.Parser kullanılmalı?

  • Doğru düzen algılama – Özel koordinatlarla çok‑sütunlu, çok‑satırlı tabloları işler.
  • Performansa odaklı – Büyük belgeler ve toplu işler için iyi çalışır.
  • Kolay entegrasyon – Maven tabanlı bağımlılık yönetimi ve basit API.
  • Genişletilebilirextract tables scanned pdf senaryoları için GroupDocs OCR ile birleştirebilirsiniz.

Önkoşullar

Başlamadan önce aşağıdakilere sahip olduğunuzdan emin olun:

  • Java 8+ IDE’nizde veya derleme aracınızda kurulu ve yapılandırılmış.
  • Maven bağımlılık yönetimi için.
  • GroupDocs.Parser lisansına (deneme veya tam) erişim.

Gerekli Kütüphaneler ve Bağımlılıklar

Şunlara ihtiyacınız olacak:

  • GroupDocs.Parser for Java kütüphanesi (sürüm 25.5 veya üzeri).
  • Bağımlılık yönetimi için sisteminizde Maven kurulu.

Ortam Kurulumu

Geliştirme ortamınızın uyumlu bir Java sürümü (Java 8 veya üzeri) ile kurulduğundan emin olun.

Bilgi Önkoşulları

Java programlamaya temel bir anlayış ve Java’da dosya işlemleri konusundaki aşinalık faydalı olacaktır.

Java için GroupDocs.Parser Kurulumu

GroupDocs.Parser’ı kullanmaya başlamak için projenize aşağıdaki şekilde entegre edin:

Maven Kurulumu
pom.xml dosyanıza GroupDocs.Parser’ı bağımlılık olarak eklemek için aşağıdaki yapılandırmayı ekleyin:

<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>

Doğrudan İndirme
Alternatif olarak, GroupDocs.Parser for Java’nin en son sürümünü GroupDocs releases adresinden indirebilirsiniz.

Lisans Edinme

Ücretsiz deneme ile başlayın, geçici bir lisans edinin veya tam lisans satın alın. Ayrıntılar için GroupDocs licensing page adresini ziyaret edin.

Temel Başlatma ve Kurulum

GroupDocs.Parser’ı Java uygulamanıza aşağıdaki gibi başlatın:

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());
        }
    }
}

Uygulama Kılavuzu

Bir PDF’den tablo nasıl çıkarılır konusundaki her özelliği adım adım inceleyelim.

Özellik 1: GroupDocs ile Belge Ayrıştırma

Genel Bakış
Bir PDF belgesiyle etkileşim kurmak için Parser sınıfının bir örneğini oluşturun. Bu, belge üzerinde çeşitli işlemler yapmanızı sağlar.

Parser Örneği Oluşturma

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());
        }
    }
}

Özellik 2: Tablo Çıkarma Yeteneği Kontrolü

Genel Bakış
Tabloları çıkarmadan önce PDF’in tablo çıkarımını desteklediğini doğrulayın.

Tablo Desteğini Kontrol Etme

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());
        }
    }
}

Özellik 3: Tablo Düzeni Yapılandırması

Genel Bakış
Tablolarınızın düzenini yapılandırmak, veri çıkarımındaki doğruluğu artırabilir.

Tablo Düzeni Ayarlama

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));
    }
}

Özellik 4: Tablo Çıkarma Seçenekleri Ayarı

Genel Bakış
Çıkarma doğruluğunu artırmak için belirli yapılandırmalarla tablo çıkarma seçeneklerini ayarlayın.

Çıkarma Seçeneklerini Yapılandırma

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);
    }
}

Özellik 5: Belgeden Tablo Çıkarma

Genel Bakış
Yapılandırılmış seçenekleri kullanarak tabloları çıkarın ve gerektiği gibi işleyin.

Çıkarma İşlemi

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());
        }
    }
}

Özellik 6: Tablo Satır ve Sütunları Üzerinde Döngü

Genel Bakış
Çıkarma sonrası, bireysel hücrelere erişmek için satır ve sütunlar üzerinde döngü yapın.

Satırları Döngüyle Geç ve Hücrelere Eriş

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
                }
            }
        }
    }
}

Yaygın Sorunlar ve Çözümler

SorunNeden Oluşurİpucu
Tablo döndürülmediPDF taranmış (görüntü‑tabanlı)İlk önce OCR çalıştırın veya ayrıştırmadan önce GroupDocs OCR kullanın.
Yanlış sütun hizalamasıDüzen koordinatları hatalıTemplateTableLayout değerlerini görsel ızgaraya uyacak şekilde ince ayar yapın.
Büyük PDF’lerde bellek dalgalanmalarıParser tüm belgeyi belleğe yüklerSayfaları toplu olarak işleyin ve her toplu işlemden sonra Parserı kapatın.

Sıkça Sorulan Sorular

1. Tarama yapılan PDF’lerden mi yoksa sadece dijital PDF’lerden mi tablo çıkarabilirim?

Cevap: GroupDocs.Parser öncelikle gömülü metin içeren dijital, seçilebilir PDF’lerle çalışır. Tarama yapılan PDF’ler için OCR (Optik Karakter Tanıma) yeteneklerini entegre etmeniz gerekir. GroupDocs ayrı OCR modülleri sunar veya tablo çıkarımından önce görüntüleri metne dönüştürmek için diğer OCR araçlarını kullanabilirsiniz.

2. Karmaşık düzenlere veya birleştirilmiş hücrelere sahip tabloları nasıl yönetirim?

Cevap: Karmaşık düzenler için TemplateTableLayout‘u belirli sütun ve satır koordinatlarıyla özelleştirebilir veya tanıma parametrelerini ayarlayarak doğruluğu artırabilirsiniz. Birleştirilmiş hücreleri yönetmek, hücre kapsamlarını analiz etmeyi ve birleştirilmiş bölgeleri yorumlamak için son‑işlem mantığı uygulamayı gerektirebilir.

3. GroupDocs.Parser büyük belgeler veya toplu işleme için uygun mu?

Cevap: Evet, GroupDocs.Parser toplu işleme için optimize edilmiştir ve büyük belgeleri verimli bir şekilde işleyebilir. Doğru kaynak yönetimi ve işleme görevlerinizi parçalayarak performansı daha da artırabilirsiniz.

4. Çıkarılan tablo verilerini CSV veya Excel gibi formatlara dışa aktarabilir miyim?

Cevap: GroupDocs.Parser kendisi çıkarıma odaklanırken, ham veriyi (satır ve hücreleri) sağlar. Bu veriyi manuel olarak veya Java kütüphaneleri olan Apache POI (Excel için) veya OpenCSV (CSV dosyaları için) kullanarak kolayca dışa aktarabilirsiniz. İşte export pdf tables csv kullanım senaryosunun devreye girdiği nokta.

5. Birden fazla sayfadan tablo çıkarma desteği var mı?

Cevap: Evet, parser.getTables()‘ı sayfa seçenekleriyle kullandığınızda birden fazla sayfadan tablo çıkarabilir. Sayfa aralıkları belirtebilir veya tüm sayfaları yinelemeli olarak işleyerek tüm tablo verilerini toplayabilirsiniz.

Sonuç

PDF’lerden tablo çıkarmak, belge veri işleme otomasyonunun temel bir adımıdır ve Java için GroupDocs.Parser bu görevi her zamankinden daha basit hâle getirir. Bir parser örneği oluşturarak, tablo desteğini doğrulayarak, düzen seçeneklerini yapılandırarak ve çıkarılan veriler üzerinde döngü yaparak geliştiriciler karmaşık PDF belgelerinden bile yapılandırılmış verileri verimli bir şekilde elde edebilir. Bu araç seti, fatura otomasyonundan büyük‑ölçekli veri analizlerine kadar çeşitli senaryoları destekleyecek kadar esnektir ve Java uygulamalarıyla sorunsuz bir şekilde bütünleşir. Biraz kurulum ve özelleştirme ile statik PDF’leri hassasiyet ve kolaylıkla eyleme geçirilebilir verilere dönüştüreceksiniz.


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