Как конвертировать PDF в изображения на C# и .NET

  1. Добавьте SautinSoft.Document из Nuget.
  2. Загрузите входной документ.
  3. Сохраните в формате изображения.

SautinSoft.Document может помочь Вашему приложению преобразовать документ из одного формата в другой.
Вам нужно будет только Load() документ и Save() в нужном формате:


            DocumentCore dc = DocumentCore.Load("...");
            dc.Save("....");

SautinSoft.Document поддерживает форматы:

PDF DOCX RTF HTML Текст Изображения
Create/Read/Write Create/Read/Write Create/Read/Write Create/Read/Write Create/Read/Write Create/Read(OCR)/Write

В этом примере кода мы покажем Вам, как конвертировать PDF (DOCX, RTF, HTML) в изображения.
Каждая страница документа будет сохранена в своем собственном формате изображения: PNG, JPEG, TIFF с разным разрешением DPI.

Например: У нас есть PDF-документ с тремя страницами внутри:


            // PaginationOptions allow to know, how many pages we have in the document. 
            DocumentPaginator dp = dc.GetPaginator(new PaginatorOptions());

Наша задача - каждая страница документа будет сохранена в своем собственном графическом формате.

Полный код

using System.IO;
using System;
using SautinSoft.Document;
using SautinSoft.Document.Drawing;
using System.Drawing.Imaging;
using System.Drawing;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            ConvertPDFtoImages();
        }

        /// <summary>
        /// Convert PDF to Images (file to file).
        /// </summary>
		/// <remarks>
        /// Details: https://sautinsoft.com/products/document/help/net/developer-guide/convert-pdf-to-images-in-csharp-vb.php
        /// </remarks>
        static void ConvertPDFtoImages()
        {
            // Path to a document where to extract pictures.
            // By the way: You may specify DOCX, HTML, RTF files also. 
            DocumentCore dc = DocumentCore.Load(@"..\..\example.pdf");
            
            // PaginationOptions allow to know, how many pages we have in the document. 
            DocumentPaginator dp = dc.GetPaginator(new PaginatorOptions());

            // Each document page will be saved in its own image format: PNG, JPEG, TIFF with different DPI.
            dp.Pages[0].Rasterize(800, SautinSoft.Document.Color.White).Save(@"..\..\example.png");
            dp.Pages[1].Rasterize(400, SautinSoft.Document.Color.White).Save(@"..\..\example.jpeg");
            dp.Pages[2].Rasterize(650, SautinSoft.Document.Color.White).Save(@"..\..\example.tiff");

        }
    }
}
    

Скачать


            Imports System.IO
Imports System
Imports SautinSoft.Document
Imports SautinSoft.Document.Drawing
Imports System.Drawing.Imaging
Imports System.Drawing

Namespace Example
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            ConvertPDFtoImages()
        End Sub

        ''' <summary>
        ''' Convert PDF to Images (file to file).
        ''' </summary>
        ''' <remarks>
        ''' Details: https://sautinsoft.com/products/document/help/net/developer-guide/convert-pdf-to-images-in-csharp-vb.php
        ''' </remarks>
        Private Shared Sub ConvertPDFtoImages()
            ' Path to a document where to extract pictures.
            ' By the way: You may specify DOCX, HTML, RTF files also.
            Dim dc As DocumentCore = DocumentCore.Load("..\..\example.pdf")

            ' PaginationOptions allow to know, how many pages we have in the document.
            Dim dp As DocumentPaginator = dc.GetPaginator(New PaginatorOptions())

            ' Each document page will be saved in its own image format: PNG, JPEG, TIFF with different DPI.
            dp.Pages(0).Rasterize(800, SautinSoft.Document.Color.White).Save("..\..\example.png")
            dp.Pages(1).Rasterize(400, SautinSoft.Document.Color.White).Save("..\..\example.jpeg")
            dp.Pages(2).Rasterize(650, SautinSoft.Document.Color.White).Save("..\..\example.tiff")
        End Sub
    End Class
End Namespace

Скачать


Если вам нужен пример кода или у вас есть вопрос: напишите нам по адресу support@sautinsoft.com или спросите в онлайн-чате (правый нижний угол этой страницы) или используйте форму ниже:



Вопросы и предложения всегда приветствуются!

Мы разрабатываем компоненты .Net с 2002 года. Мы знаем форматы PDF, DOCX, RTF, HTML, XLSX и Images. Если вам нужна помощь в создании, изменении или преобразовании документов в различных форматах, мы можем вам помочь. Мы напишем для вас любой пример кода абсолютно бесплатно.