Оглавление
Установлено через NuGet
PM> Install-Package Spire.PDF
Ссылки по теме
Многие финансовые отчеты, исследовательские работы, юридические документы или счета-фактуры часто распространяются в формате PDF. Чтение PDF-файлов позволяет извлекать информацию, анализировать контент и выполнять задачи по обработке данных, такие как извлечение текста, поиск по ключевым словам, классификация документов и интеллектуальный анализ данных.
Используя C# для чтения PDF-файлов, вы можете автоматизировать повторяющиеся задачи и реализовать эффективный поиск конкретной информации из большой коллекции PDF-файлов. Это ценно для приложений, требующих поиска в обширных архивах, цифровых библиотеках или хранилищах документов. В этой статье будут приведены следующие примеры, которые покажут вам, как прочитать PDF-файл на C#.
- Чтение текста со страницы PDF на C#
- Чтение текста из области страницы PDF в C#
- Чтение PDF без сохранения макета текста на C#
- Извлечение изображений и таблиц в PDF на C#
Библиотека чтения PDF-файлов C#
Библиотека Spire.PDF for .NET может служить библиотекой чтения PDF-файлов, которая позволяет разработчикам интегрировать возможности чтения PDF-файлов в свои приложения. Он предоставляет функции и API для анализа, рендеринга и обработки PDF-файлов в приложениях .NET.
Вы также можете скачайте программу чтения PDF-файлов C# чтобы вручную добавить файлы DLL в качестве ссылок в ваш проект .NET или установить их напрямую через NuGet.
PM> Install-Package Spire.PDF
Чтение текста со страницы PDF на C#
Spire.PDF for .NET упрощает чтение текста PDF на C# с помощью класса PdfTextExtractor. Ниже приведены шаги для чтения всего текста с указанной страницы PDF.
- Создайте объект PDFDocument.
- Загрузите PDF-файл с помощью метода PdfDocument.LoadFromFile().
- Получите конкретную страницу через свойство PdfDocument.Pages[index].
- Создайте объект PdfTextExtractor.
- Создайте объект PdfTextExtractOptions и задайте для свойства IsExtractAllText значение true.
- Извлеките текст с выбранной страницы с помощью метода PdfTextExtractor.ExtractText().
- Запишите извлеченный текст в файл TXT.
В следующем примере кода показано, как использовать C# для чтения текста PDF с указанной страницы.
- C#
using System;
using System.IO;
using Spire.Pdf;
using Spire.Pdf.Texts;
namespace ExtractTextFromPage
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile("TestPDF.pdf");
//Get the first page
PdfPageBase page = doc.Pages[0];
//Create a PdfTextExtractot object
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
//Create a PdfTextExtractOptions object
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
//Set isExtractAllText to true
extractOptions.IsExtractAllText = true;
//Read text from the PDF page
string text = textExtractor.ExtractText(extractOptions);
//Write to a txt file
File.WriteAllText("ReadPDF.txt", text);
}
}
}

Чтение текста из области страницы PDF в C#
Чтобы прочитать текст PDF из указанной области страницы в PDF, вы можете сначала определить прямоугольную область, а затем вызвать метод setExtractArea() класса PdfTextExtractOptions, чтобы извлечь из нее текст. Ниже приведены шаги по извлечению текста PDF из прямоугольной области страницы.
- Создайте объект PDFDocument.
- Загрузите PDF-файл с помощью метода PdfDocument.LoadFromFile().
- Получите конкретную страницу через свойство PdfDocument.Pages[index].
- Создайте объект PdfTextExtractor.
- Создайте объект PdfTextExtractOptions и укажите область прямоугольника с помощью его свойства ExtractArea.
- Извлеките текст из прямоугольника с помощью метода PdfTextExtractor.ExtractText().
- Запишите извлеченный текст в файл TXT.
В следующем примере кода показано, как использовать C# для чтения текста PDF из указанной области страницы.
- C#
using Spire.Pdf;
using Spire.Pdf.Texts;
using System.IO;
using System.Drawing;
namespace ExtractTextFromRectangleArea
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile("TestPDF.pdf");
//Get the first page
PdfPageBase page = doc.Pages[0];
//Create a PdfTextExtractot object
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
//Create a PdfTextExtractOptions object
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
//Specify a rectangle area
extractOptions.ExtractArea = new RectangleF(0, 180, 800, 160);
//Read PDF text from the rectangle
string text = textExtractor.ExtractText(extractOptions);
//Write to a txt file
File.WriteAllText("ReadPDFArea.txt", text);
}
}
}

Чтение PDF без сохранения макета текста на C#
Вышеупомянутые методы читают текст PDF построчно. Вы также можете читать текст PDF, не сохраняя его макет, используя стратегию SimpleExtraction. Он отслеживает текущую позицию Y каждой строки и вставляет разрыв строки в выходные данные, если позиция Y изменилась. Ниже приведены шаги для простого чтения текста PDF.
- Создайте объект PDFDocument.
- Загрузите PDF-файл с помощью метода PdfDocument.LoadFromFile().
- Получите конкретную страницу через свойство PdfDocument.Pages[index].
- Создайте объект PdfTextExtractor.
- Создайте объект PdfTextExtractOptions и задайте для свойства IsSimpleExtraction значение true.
- Извлеките текст с выбранной страницы с помощью метода PdfTextExtractor.ExtractText().
- Запишите извлеченный текст в файл TXT.
В следующем примере кода показано, как использовать C# для чтения текста PDF без сохранения макета текста.
- C#
using System.IO;
using Spire.Pdf;
using Spire.Pdf.Texts;
namespace SimpleExtraction
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument object
PdfDocument doc = new PdfDocument();
//Load a PDF file
doc.LoadFromFile("TestPDF.pdf");
//Get the first page
PdfPageBase page = doc.Pages[0];
//Create a PdfTextExtractor object
PdfTextExtractor textExtractor = new PdfTextExtractor(page);
//Create a PdfTextExtractOptions object
PdfTextExtractOptions extractOptions = new PdfTextExtractOptions();
//Set IsSimpleExtraction to true to
extractOptions.IsSimpleExtraction = true;
//Read text from the PDF page
string text = textExtractor.ExtractText(extractOptions);
//Write to a txt file
File.WriteAllText("ExtractPDF.txt", text);
}
}
}

Извлечение изображений и таблиц в PDF на C#
Помимо чтения текста PDF на C#, библиотека Spire.PDF for .NET также позволяет извлекать изображения из PDF или читать только табличные данные в файле PDF. Следующие ссылки направят вас на соответствующие официальные руководства:
- Извлечение изображений из PDF в C#
- Извлечение данных таблицы из PDF на C#
- Извлечение таблиц из PDF в Excel на C#
Заключение
В этой статье представлены различные способы чтения PDF-файла на C#. Из приведенных примеров вы можете узнать, как читать текст PDF с указанной страницы, из указанной области прямоугольника или читать файлы PDF без сохранения макета текста. Кроме того, извлечение изображений или таблиц в файл PDF также можно выполнить с помощью библиотеки Spire.PDF for .NET.
Узнайте больше о возможностях обработки и преобразования PDF-файлов библиотеки .NET PDF, используя документацию. Если во время тестирования возникли какие-либо проблемы, свяжитесь со службой технической поддержки по электронной почте или на форуме.