Class PngDevice

Класс PngDevice

Представляет устройство изображения, которое помогает сохранять страницы pdf-документа в формате png.

public sealed class PngDevice : ImageDevice

Конструкторы

ИмяОписание
PngDevice()Инициализирует новый экземпляр класса PngDevice с разрешением по умолчанию.
PngDevice(PageSize)Инициализирует новый экземпляр класса PngDevice с заданным размером страницы, разрешение по умолчанию (=150).
PngDevice(Resolution)Инициализирует новый экземпляр класса PngDevice. Разрешение для результирующего файла изображения, см. класс Resolution.
PngDevice(int, int)Инициализирует новый экземпляр класса PngDevice с заданными размерами изображения, разрешение по умолчанию (=150).
PngDevice(PageSize, Resolution)Инициализирует новый экземпляр класса PngDevice с заданным размером страницы и разрешением.
PngDevice(int, int, Resolution)Инициализирует новый экземпляр класса PngDevice с заданными размерами изображения и разрешением.

Свойства

ИмяОписание
CoordinateType { get; set; }Получает или задает тип координат страницы (Media/Crop boxes). Значение CropBox используется по умолчанию.
FormPresentationMode { get; set; }Получает или задает режим представления формы.
Height { get; }Получает высоту выходного изображения.
RenderingOptions { get; set; }Получает или задает параметры рендеринга.
Resolution { get; }Получает разрешение изображения.
TransparentBackground { get; set; }Получает или задает, имеет ли изображение прозрачный фон.
Width { get; }Получает ширину выходного изображения.

Методы

ИмяОписание
override Process(Page, Stream)Преобразует страницу в png и сохраняет ее в выходном потоке.
Process(Page, string)Выполняет некоторые операции на заданной странице и сохраняет результаты в файл.

Примеры

Следующий пример показывает, как преобразовать PDF файл в изображения PNG.

[C#]
	// The path to your PDF Directory
	string dataDir = @"YOUR_DATA_DIRECTORY";

	// The file name of the PDF
	string pdfFile = @"YOUR_PDF_FILE";

	// Initialize instance of Document class
	using (Document pdfDocument = new Document(Path.Combine(dataDir, pdfFile)))
	{
		// Create Resolution object 	
		Resolution resolution = new Resolution(300);

		// Initialize PngDevice	
		PngDevice pngDevice = new PngDevice(resolution);
		for (int pageCount = 1; pageCount <= pdfDocument.Pages.Count; pageCount++)
		{
			using (FileStream pngStream =
			new FileStream($"{dataDir}image{pageCount}_out.png",
			FileMode.Create))
			{
				// Convert a particular page and save the image to stream
				pngDevice.Process(pdfDocument.Pages[pageCount], pngStream);

				// Close stream
				pngStream.Close();
			}
		}
	}
[VB.NET]

    ' The path to your PDF Directory
    Dim dataDir As String = "YOUR_DATA_DIRECTORY"
	
    ' The file name of the PDF
    Dim pdfFile As String = "YOUR_PDF_FILE"
 
    ' Initialize instance of Document class
	Using pdfDocument As Document = New Document(Path.Combine(dataDir, pdfFile))
		' Create Resolution object  
		Dim resolution As Resolution = New Resolution(300)
		' initialize PngDevice  

		Dim pngDevice As PngDevice = New PngDevice(resolution)
		For pageCount As Integer = 1 To pdfDocument.Pages.Count
			Using pngStream As FileStream = New FileStream($"{dataDir}image{pageCount}_out.png", FileMode.Create)
				' Convert a particular page and save the image to stream
				pngDevice.Process(pdfDocument.Pages(pageCount), pngStream)

				' Close stream
				pngStream.Close()
			End Using
		Next
	End Using

См. также