Як читати файл PDF на C#

Програмне читання різних типів документів сьогодні є звичайною практикою. У цьому посібнику ви дізнаєтеся, як читати файл PDF у C#, дотримуючись наведених нижче простих кроків.

Кроки для читання файлу PDF у C#

  1. Створіть порожню консольну програму C# у Visual Studio
  2. Додайте посилання на Aspose.PDF for .NET, встановивши його з NuGet.org
  3. Завантажте наявний файл PDF в об’єкт Document
  4. Ініціалізувати клас TextAbsorber для читання файлу PDF
  5. Витягніть текст PDF і запишіть його у вихідні дані консолі
  6. Перегляньте сторінку PDF Resources, щоб знайти зображення
  7. Створіть об’єкт FileStream із знайденим зображенням
  8. Збережіть зображення на локальному диску

Наведений нижче фрагмент коду пояснює, як відкрити та прочитати PDF-файл у C#. Ви зможете читати текст і витягувати зображення з файлу PDF, використовуючи його. API пропонує клас TextAbsorber, який використовується для читання тексту з PDF-файлу, і ви можете отримати отримані результати за допомогою об’єкта Text. Знайти зображення та зберегти їх на локальному диску також можна за допомогою циклічного перегляду ресурсів сторінки PDF, як показано нижче.

Код для читання файлу PDF у 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;
}
}
}
}

У попередній темі ви дізналися про як обробляти великі файли PDF на C#. Наведена вище інформація та приклад коду дозволять вам відкривати та читати PDF-файли на C#, щоб видобувати текст і зображення.

 Українська