Оглавление
Установлено через 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, используя документацию. Если во время тестирования возникли какие-либо проблемы, свяжитесь со службой технической поддержки по электронной почте или на форуме.