Membaca berbagai jenis dokumen secara terprogram adalah praktik umum akhir-akhir ini. Dalam panduan cara ini, Anda akan mempelajari cara membaca File PDF dalam C# dengan mengikuti langkah-langkah sederhana di bawah ini.
Langkah-langkah Membaca File PDF di C#
- Buat Aplikasi Konsol C# kosong di Visual Studio
- Tambahkan referensi ke Aspose.PDF for .NET dengan menginstalnya dari NuGet.org
- Muat file PDF yang ada di objek Dokumen
- Inisialisasi TextAbsorber Kelas untuk membaca file PDF
- Ekstrak teks PDF dan tulis ke keluaran Konsol
- Ulangi melalui Halaman PDF Resources untuk menemukan gambar
- Buat objek FileStream dengan gambar yang ditemukan
- Simpan gambar ke disk lokal
Cuplikan kode di bawah ini menjelaskan cara membuka dan membaca file PDF di C#. Anda akan dapat membaca teks dan mengekstrak gambar dari file PDF dengan menggunakannya. API menawarkan Kelas TextAbsorber yang digunakan untuk membaca teks dari file PDF dan Anda dapat mencapai hasil yang diekstrak melalui objek Text. Menemukan gambar dan menyimpannya ke disk lokal juga dimungkinkan dengan mengulang melalui sumber halaman PDF seperti yang ditunjukkan di bawah ini.
Kode untuk Membaca File PDF di C#
using System; | |
using System.IO; | |
// Add reference to Aspose.PDF for .NET API | |
// Use following namespace to read PDF file | |
using Aspose.Pdf; | |
namespace ReadPDFFiles | |
{ | |
class Program | |
{ | |
static void Main(string[] args) | |
{ | |
// Set license before reading PDF file | |
Aspose.Pdf.License AsposePDFLicense = new Aspose.Pdf.License(); | |
AsposePDFLicense.SetLicense(@"c:\asposelicense\license.lic"); | |
string inFile = @"c:\ReadPDFFileInCSharp.pdf"; | |
// Load an existing PDF file in Document object to read | |
Document pdf = new Document(inFile); | |
// 1. Read text from PDF file | |
// Initialize TextAbsorber Class to read Text from PDF file | |
Aspose.Pdf.Text.TextAbsorber textAbsorber = new Aspose.Pdf.Text.TextAbsorber(); | |
// Call Page.Accept() method to let TextAbsorber find text in PDF Pages | |
pdf.Pages.Accept(textAbsorber); | |
// Write the extracted text to Console output | |
Console.WriteLine(textAbsorber.Text); | |
// 2. Extract images from PDF file | |
int imageIndex = 1; | |
// Iterate through PDF pages | |
foreach (var pdfPage in pdf.Pages) | |
{ | |
// Check available images while reading the PDF | |
foreach (XImage image in pdfPage.Resources.Images) | |
{ | |
// Create file stream for found image | |
FileStream extractedImage = new FileStream(String.Format("Page{0}_Image{1}.jpg", pdfPage.Number, imageIndex), FileMode.Create); | |
// Save output image to the disk | |
image.Save(extractedImage, System.Drawing.Imaging.ImageFormat.Jpeg); | |
// Close stream | |
extractedImage.Close(); | |
imageIndex++; | |
} | |
// Reset image index | |
imageIndex = 1; | |
} | |
} | |
} | |
} |
Di topik sebelumnya, Anda telah mempelajari cara memproses file PDF besar di C#. Informasi dan contoh kode di atas akan memungkinkan Anda untuk membuka dan membaca file PDF dalam C# untuk mengekstrak teks dan gambar.