Ekstrak Teks dari File PDF

Contents
[ ]

Dalam artikel ini, kita akan melihat rincian tentang cara mengekstrak teks dari file PDF. Semua fitur ekstraksi ini disediakan di satu tempat, dalam kelas PdfExtractor. Kita akan melihat bagaimana cara menggunakan fitur-fitur ini dalam kode kita.

Kelas PdfExtractor menyediakan tiga jenis kemampuan ekstraksi. Tiga kategori ini adalah Teks, Gambar, dan Lampiran. Untuk melakukan ekstraksi di bawah masing-masing dari tiga kategori ini, PdfExtractor menyediakan berbagai metode yang bekerja sama untuk memberikan output akhir kepada Anda.

Sebagai contoh, untuk mengekstrak teks, Anda dapat menggunakan tiga metode yaitu ExtractText, GetText, HasNextPageText, dan GetNextPageText. Sekarang, untuk mulai mengekstrak teks, pertama-tama Anda perlu memanggil metode ExtractText; ini akan mengekstrak teks dari file PDF dan menyimpannya ke dalam memori. Setelah itu, metode GetText akan mengambil teks yang diekstrak ini dan menyimpannya ke disk di lokasi yang ditentukan dalam sebuah file. HasNextPageText membantu Anda untuk melintasi setiap halaman dan memeriksa apakah halaman berikutnya memiliki teks atau tidak. Jika mengandung teks, maka GetNextPageText akan membantu Anda menyimpan teks dari halaman individu ke dalam file.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ExtractText()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Text();

    bool wholeText = true;
    // Create an object of the PdfExtractor class
    using (var pdfExtractor = new Aspose.Pdf.Facades.PdfExtractor())
    {
        // Bind PDF document
        pdfExtractor.BindPdf(dataDir + "sample.pdf");

        // ExtractText
        pdfExtractor.ExtractText();

        if (!wholeText)
        {
            pdfExtractor.GetText(dataDir + "sample.txt");
        }
        else
        {
            // Extract the text into separate files
            int pageNumber = 1;
            while (pdfExtractor.HasNextPageText())
            {
                pdfExtractor.GetNextPageText($"{dataDir}\\sample{pageNumber:D3}.txt");
                pageNumber++;
            }
        }
    }
}

Untuk Mengambil Mode Ekstraksi Teks, gunakan kode berikut:

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void ExtractTextExtractonMode()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Text();

    bool wholeText = true;
    // Create an object of the PdfExtractor class
    using (var pdfExtractor = new Aspose.Pdf.Facades.PdfExtractor())
    {
        // Bind PDF document
        pdfExtractor.BindPdf(dataDir + "ExtractTextExtractonMode.pdf");

        // ExtractText
        // pdfExtractor.ExtractTextMode = 0; // pure mode
        pdfExtractor.ExtractTextMode = 1; // raw mode
        pdfExtractor.ExtractText();

        if (!wholeText)
        {
            pdfExtractor.GetText(dataDir + "ExtractTextExtractonMode_out.txt");
        }
        else
        {
            // Extract the text into separate files
            int pageNumber = 1;
            while (pdfExtractor.HasNextPageText())
            {
                pdfExtractor.GetNextPageText($"{dataDir}\\sample{pageNumber:D3}.txt");
                pageNumber++;
            }
        }
    }
}