Как извлечь текст и изображения из PDF на языке C #
Извлечение текста и изображений из PDF — файлов стало важной задачей во всех областях, от обработки документов до анализа данных. Файлы PDF (переносимые форматы документов) широко используются для обмена и сохранения информации, но извлечение контента из них может быть затруднено из — за их сложной структуры. Тем не менее, с развитием технологии, теперь есть эффективные методы и инструменты для извлечения текста и изображений из PDF. В этой статье я представлю вам простое решение C # для извлечения текста и изображений из PDF — документов.
Для этого сценария требуется Free Spire.PDF for .NET, бесплатная библиотека.NET для обработки PDF - документов. Его можно установить с помощью NuGet.
Установка Free Spire.PDF с помощью NuGet
Вы можете установить пакет FreeSpire.PDF, выполнив поиск и установку через «Tool» -> «NuGet Package Manager» -> «Manage NuGet Packages for Solution», или установить его с помощью следующей команды NuGet:
PM> Install-Package FreeSpire.PDF
Извлечение текста с определенной страницы на языке C #
Следующий код загружает PDF — документ под названием «Test», а затем получает первую страницу через атрибут «doc.Pages [index]». Затем был создан объект «PdfTextExtractor», и текст на первой странице был извлечен с помощью метода «ExtractText» под ним.
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(@"C:UsersAdministratorDesktopTest.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;
//Extract text from the page
string text = textExtractor.ExtractText(extractOptions);
//Write to a txt file
File.WriteAllText("Extracted.txt", text);
}
}
}
Извлечение изображений из всего документа на языке C #
using Spire.Pdf;
using System.Drawing;
namespace ExtractImages
{
class Program
{
static void Main(string[] args)
{
//Create a PdfDocument instance
PdfDocument pdf = new PdfDocument();
//Load a PDF document
pdf.LoadFromFile("Test.pdf");
int i = 1;
//Loop through all pages in the document
foreach (PdfPageBase page in pdf.Pages)
{
//Extract images from each page and save them to a specified file path
foreach (Image image in page.ExtractImages())
{
image.Save(@"C:/Users/Administrator/Desktop/Images/" + «image» + i + «.png», System.Drawing.Imaging.ImageFormat.Png);
i++;
}
}
}
}
}
Другие функции
Free Spire.PDF — это полнофункциональная библиотека pdf, которая, помимо извлечения контента, поддерживает множество операций, связанных с pdf, таких как:
— C# / VB.NET Преобразование PDF в Word
— C# / VB.NET Добавление водяного знака в PDF