Главное Авторские колонки Вакансии Образование
187 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как извлечь изображения из PDF в C#

В этой статье я расскажу, как извлекать изображения из PDF-документа на C# с помощью библиотеки .NET PDF.
Мнение автора может не совпадать с мнением редакции

Извлечение изображений из PDF-документов — ценный навык для разработчиков и аналитиков данных. Этот процесс позволяет пользователям извлекать и использовать визуальный контент, встроенный в PDF-документы, для различных приложений, таких как создание отчетов или управление контентом.

В этой статье я расскажу, как извлекать изображения из PDF-документа на C# с помощью библиотеки .NET PDF.

  • Извлечение изображений из определенной страницы PDF в C#
  • Извлечение всех изображений из всего PDF-документа на C#

Библиотека C# для извлечения изображений из PDF

Spire.PDF for .NET — это универсальная и мощная библиотека, позволяющая разработчикам с легкостью манипулировать PDF-файлами. Одной из ее отличительных особенностей является возможность извлекать изображения из PDF-файлов с помощью C#.

Библиотеку можно установить из NuGet с помощью следующей команды.

PM> Install-Package Spire.PDF

Извлечение изображений из определенной страницы PDF в C#

Чтобы получить информацию об изображениях на конкретной странице PDF, разработчики могут использовать метод PdfImageHelper.GetImagesInfo(). Этот метод извлекает подробную информацию обо всех изображениях, содержащихся на указанной странице. После получения данных об изображениях разработчики могут легко сохранить каждое изображение в файл, вызвав метод PdfImageInfo.Image.Save(). Этот двухшаговый процесс позволяет эффективно извлекать изображения, давая разработчикам возможность управлять и использовать изображения из PDF в своих приложениях.

Следующий код демонстрирует, как извлечь изображения с определенной страницы из PDF с помощью C#.

using Spire.Pdf;

using Spire.Pdf.Utilities;

using System.Drawing;

namespace ExtractImagesFromPage

{

class Program

{

static void Main(string[] args)

{

// Создайте объект PdfDocument

PdfDocument doc = new PdfDocument();

// Загрузите PDF-документ

doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\sample.pdf");

// Получите конкретную страницу

PdfPageBase page = doc.Pages[0];

// Создайте объект PdfImageHelper

PdfImageHelper imageHelper = new PdfImageHelper();

// Получите всю информацию об изображениях со страницы

PdfImageInfo[] imageInfos = imageHelper.GetImagesInfo(page);

// Переберите информацию об изображениях

for (int i = 0; i < imageInfos.Length; i++)

{

// Получите конкретную информацию об изображении

PdfImageInfo imageInfo = imageInfos[i];

// Получите изображение

Image image = imageInfo.Image;

// Сохраните изображение в файл png

image.Save("C:\\Users\\Administrator\\Desktop\\Extracted\\Image-" + i + «.png»);

}

// Освободите ресурсы

doc.Dispose();

}

}

}

Извлечение всех изображений из всего PDF-документа на C#

В предыдущем примере вы узнали, как извлекать изображения с конкретной страницы в документе PDF. Перебирая каждую страницу документа, вы можете эффективно извлечь все изображения, содержащиеся в целом PDF-файле. Этот подход обеспечивает всестороннее извлечение изображений, гарантируя, что ни одно изображение не будет упущено.

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

using Spire.Pdf;

using Spire.Pdf.Utilities;

using System.Drawing;

namespace ExtractAllImages

{

class Program

{

static void Main(string[] args)

{

// Создайте объект PdfDocument

PdfDocument doc = new PdfDocument();

// Загрузите PDF-документ

doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\Sample.pdf");

// Создайте объект PdfImageHelper

PdfImageHelper imageHelper = new PdfImageHelper();

// Объявите переменную типа int

int m = 0;

// Переберите страницы

for (int i = 0; i < doc.Pages.Count; i++)

{

// Получите конкретную страницу

PdfPageBase page = doc.Pages[i];

// Получите всю информацию об изображениях со страницы

PdfImageInfo[] imageInfos = imageHelper.GetImagesInfo(page);

// Переберите информацию об изображениях

for (int j = 0; j < imageInfos.Length; j++)

{

// Получите конкретную информацию об изображении

PdfImageInfo imageInfo = imageInfos[j];

// Получите изображение

Image image = imageInfo.Image;

// Сохраните изображение в файл png

image.Save("C:\\Users\\Administrator\\Desktop\\Extracted\\Image-" + m + «.png»);

m++;

}

}

// Освободите ресурсы

doc.Dispose();

}

}

}

Заключение

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

Преобразование PDF в Word на C#

Преобразование PDF в HTML на C#

Печать PDF-документов в C#

Добавление водяных знаков в PDF в C#

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем