Click or drag to resize

ImageToPdfOptions Class

Image to PDF conversion options, such as: Page Size, Orientation, Header, Footer, Numbering, Page Margins, Scale and so forth.
Inheritance Hierarchy
SystemObject
  SautinSoft.PdfVisionImageToPdfOptions

Namespace: SautinSoft.PdfVision
Assembly: SautinSoft.PdfVision (in SautinSoft.PdfVision.dll) Version: 2024.8.28
Syntax
public class ImageToPdfOptions

The ImageToPdfOptions type exposes the following members.

Constructors
 NameDescription
Public methodCode exampleImageToPdfOptions Default constructor for the ImageToPdfOptions class.
Top
Properties
 NameDescription
Public propertyCompressionType Gets and sets PDF compression type. Default: Fastest.
Public propertyCode exampleDistanceBetweenImages Gets or sets horizontal and vertical space interval between images (in points). Default: 15 pt.
Public propertyFitImageToPageSize Gets and sets the value to scale each image (disproportionately) to fit the page size. Thus, each page will contain only the one full-page image. Default: true.
Public propertyCode exampleHeight Gets and set a single height for all images (in points). Default: null, this means to use the current image height.
Public propertyCode exampleJpegQuality Gets or sets the quality of the image (only for JPEG), between 0-100. Not applicable to PNG images. Default: 95.
Public propertyCode examplePageNumbering Gets and sets page numbering properties.
Public propertyCode examplePageSetup Gets and sets the page setup properties: paper type, orientation, margins and so forth.
Public propertyCode examplePlaceImagesByHorizontal Gets or sets value whether to place images vertically or by horizontal. Default: false, this means to place images vertically.
Public propertyScale Gets or sets scale in percents for all images which will be converted to PDF, default: 100.0M.
Public propertyCode exampleWidth Gets and set a single width for all images (in points). Default: null, this means to use the current image width.
Top
Methods
 NameDescription
Public methodEqualsDetermines whether the specified object is equal to the current object.
(Inherited from Object)
Public methodGetHashCodeServes as the default hash function.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Public methodToStringReturns a string that represents the current object.
(Inherited from Object)
Top
Example
Horizontal and Vertical Image Placement in C#
using System;
using System.IO;
using SautinSoft.PdfVision;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            ImagePlacement();
        }
        public static void ImagePlacement()
        {
            string inpFolder = new DirectoryInfo(@"..\..\..\testing\").FullName;
            string outFile = new FileInfo(@"Horizontal.pdf").FullName;
            // Before starting, we recommend to get a free 100-day key:
            // https://sautinsoft.com/start-for-free/

            // Apply the key here:
            // SautinSoft.PdfVision.SetLicense("...");

            PdfVision v = new PdfVision();
            ImageToPdfOptions options = new ImageToPdfOptions();
            options.PageSetup.PaperType = PaperType.Letter;
            options.PageSetup.Orientation = Orientation.Landscape;
            options.PageSetup.PageMargins.Left = LengthUnitConverter.ToPoint(20, LengthUnit.Millimeter);
            options.PageSetup.PageMargins.Top = LengthUnitConverter.ToPoint(20, LengthUnit.Millimeter);

            // Case 1: Place all images in horizontal order,
            // set image size 75 x 75 mm, distance 10 mm between images.
            options.PlaceImagesByHorizontal = true;
            options.Width = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter);
            options.Height = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter);
            options.DistanceBetweenImages = LengthUnitConverter.ToPoint(10, LengthUnit.Millimeter);

            try
            {
                v.ConvertImageToPdf(inpFolder, outFile, options);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
                Console.ReadLine();
            }

            // Case 2: Place all images in vertical order,
            // set image size 75 x 75 mm, distance 10 mm between images.
            outFile = new FileInfo(@"Vertical.pdf").FullName;
            options.PageSetup.Orientation = Orientation.Portrait;
            options.PlaceImagesByHorizontal = false;
            options.Width = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter);
            options.Height = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter);
            options.DistanceBetweenImages = LengthUnitConverter.ToPoint(10, LengthUnit.Millimeter);

            try
            {
                v.ConvertImageToPdf(inpFolder, outFile, options);
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
                Console.ReadLine();
            }
        }
    }
}
Horizontal and Vertical Image Placement in VB.Net
Imports System
Imports System.IO
Imports SautinSoft.PdfVision

Namespace Sample
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            ImagePlacement()
        End Sub
        Public Shared Sub ImagePlacement()
            Dim inpFolder As String = (New DirectoryInfo("..\..\..\testing\")).FullName
            Dim outFile As String = (New FileInfo("Horizontal.pdf")).FullName
            ' Before starting, we recommend to get a free 100-day key:
            ' https://sautinsoft.com/start-for-free/

            ' Apply the key here:
            ' SautinSoft.PdfVision.SetLicense("...");

            Dim v As New PdfVision()
            Dim options As New ImageToPdfOptions()
            options.PageSetup.PaperType = PaperType.Letter
            options.PageSetup.Orientation = Orientation.Landscape
            options.PageSetup.PageMargins.Left = LengthUnitConverter.ToPoint(20, LengthUnit.Millimeter)
            options.PageSetup.PageMargins.Top = LengthUnitConverter.ToPoint(20, LengthUnit.Millimeter)

            ' Case 1: Place all images in horizontal order,
            ' set image size 75 x 75 mm, distance 10 mm between images.
            options.PlaceImagesByHorizontal = True
            options.Width = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter)
            options.Height = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter)
            options.DistanceBetweenImages = LengthUnitConverter.ToPoint(10, LengthUnit.Millimeter)

            Try
                v.ConvertImageToPdf(inpFolder, outFile, options)
                System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
            Catch ex As Exception
                Console.WriteLine($"Error: {ex.Message}")
                Console.ReadLine()
            End Try

            ' Case 2: Place all images in vertical order,
            ' set image size 75 x 75 mm, distance 10 mm between images.
            outFile = (New FileInfo("Vertical.pdf")).FullName
            options.PageSetup.Orientation = Orientation.Portrait
            options.PlaceImagesByHorizontal = False
            options.Width = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter)
            options.Height = LengthUnitConverter.ToPoint(75, LengthUnit.Millimeter)
            options.DistanceBetweenImages = LengthUnitConverter.ToPoint(10, LengthUnit.Millimeter)

            Try
                v.ConvertImageToPdf(inpFolder, outFile, options)
                System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo(outFile) With {.UseShellExecute = True})
            Catch ex As Exception
                Console.WriteLine($"Error: {ex.Message}")
                Console.ReadLine()
            End Try
        End Sub
    End Class
End Namespace
See Also