Cách đọc tệp PDF trong C#

Đọc các loại tài liệu khác nhau theo chương trình là thông lệ ngày nay. Trong hướng dẫn cách thực hiện này, bạn sẽ học cách đọc Tệp PDF trong C# bằng cách thực hiện theo các bước đơn giản bên dưới.

Các bước để đọc tệp PDF trong C#

  1. Tạo một Ứng dụng Bảng điều khiển C# trống trong Visual Studio
  2. Thêm tham chiếu vào Aspose.PDF for .NET bằng cách cài đặt nó từ NuGet.org
  3. Tải tệp PDF hiện có trong đối tượng Tài liệu
  4. Khởi tạo lớp TextAbsorber để đọc tệp PDF
  5. Trích xuất văn bản PDF và ghi nó vào đầu ra Console
  6. Duyệt qua Trang PDF Resources để tìm hình ảnh
  7. Tạo đối tượng FileStream với hình ảnh tìm thấy
  8. Lưu hình ảnh vào đĩa cục bộ

Đoạn mã dưới đây giải thích cách mở và đọc tệp PDF trong C#. Bạn sẽ có thể đọc văn bản và trích xuất hình ảnh từ tệp PDF bằng cách sử dụng nó. API cung cấp Lớp TextAbsorber được sử dụng để đọc văn bản từ tệp PDF và bạn có thể đạt được kết quả được trích xuất thông qua đối tượng Text. Cũng có thể tìm hình ảnh và lưu chúng vào đĩa cục bộ bằng cách lặp qua các tài nguyên Trang PDF như được hiển thị bên dưới.

Mã để đọc tệp PDF trong 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;
}
}
}
}

Trong chủ đề trước, bạn đã học cách xử lý các tệp PDF lớn trong C#. Thông tin và mã ví dụ ở trên sẽ cho phép bạn mở và đọc các tệp PDF trong C# để trích xuất văn bản và hình ảnh.

 Tiếng Việt