PdfFocusExtractImages(Int32, Int32) Method |
Extract all images from PDF document from specific pages.
Namespace: SautinSoftAssembly: SautinSoft.PdfFocus (in SautinSoft.PdfFocus.dll) Version: 2024.3.28
Syntax public List<PdfFocusPdfImage> ExtractImages(
int from,
int to
)
Public Function ExtractImages (
from As Integer,
to As Integer
) As List(Of PdfFocusPdfImage)
Parameters
- from Int32
- The starting page for extracting images.
- to Int32
- The ending page for extracting images.
Return Value
ListPdfFocusPdfImage
List with
PdfImage objects.
Null - in case of extraction failed.
Example Extract all images from 1st PDF page in C#
using System;
using System.IO;
using System.Collections.Generic;
using SautinSoft;
namespace Sample
{
class Sample
{
static void Main(string[] args)
{
SautinSoft.PdfFocus f = new SautinSoft.PdfFocus();
string pdfFile = Path.GetFullPath(@"..\..\..\simple text.pdf");
string imageDir = new DirectoryInfo(Directory.GetCurrentDirectory()).CreateSubdirectory("images").FullName;
List<PdfFocus.PdfImage> pdfImages = null;
f.OpenPdf(pdfFile);
if (f.PageCount > 0)
{
pdfImages = f.ExtractImages(1, 1);
if (pdfImages != null && pdfImages.Count > 0)
{
for (int i = 0; i < pdfImages.Count; i++)
{
string imageFile = Path.Combine(imageDir, String.Format("img{0}.png", i + 1));
pdfImages[i].Picture.Encode(new FileStream(imageFile, FileMode.Create), SkiaSharp.SKEncodedImageFormat.Png, 100);
}
System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(imageDir) { UseShellExecute = true });
}
}
}
}
}
Extract all images from 1st PDF page in VB.Net
Imports System
Imports System.IO
Imports System.Collections.Generic
Imports SautinSoft
Namespace Sample
Friend Class Sample
Shared Sub Main(ByVal args() As String)
Dim f As New SautinSoft.PdfFocus()
Dim pdfFile As String = Path.GetFullPath("..\..\..\simple text.pdf")
Dim imageDir As String = (New DirectoryInfo(Directory.GetCurrentDirectory())).CreateSubdirectory("images").FullName
Dim pdfImages As List(Of PdfFocus.PdfImage) = Nothing
f.OpenPdf(pdfFile)
If f.PageCount > 0 Then
pdfImages = f.ExtractImages(1, 1)
If pdfImages IsNot Nothing AndAlso pdfImages.Count > 0 Then
For i As Integer = 0 To pdfImages.Count - 1
Dim imageFile As String = Path.Combine(imageDir, String.Format("img{0}.png", i + 1))
pdfImages(i).Picture.Encode(New FileStream(imageFile, FileMode.Create), SkiaSharp.SKEncodedImageFormat.Png, 100)
Next i
System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(imageDir) With {.UseShellExecute = True})
End If
End If
End Sub
End Class
End Namespace
See Also