Click or drag to resize

HtmlToPdfOptionsPageSetup Property

Gets and sets the page setup properties: paper type, orientation, margins and so forth.

Namespace:  SautinSoft.PdfVision
Assembly:  SautinSoft.PdfVision (in SautinSoft.PdfVision.dll) Version: 2023.11.2
Syntax
public PageSetup PageSetup { get; set; }

Property Value

Type: PageSetup
Examples
How to setup Page Size and Margins using using C#
using System;
using System.IO;
using SautinSoft.PdfVision;

namespace Sample
{
    class Program
    {
        static void Main(string[] args)
        {
            SetupPageProperties();
        }
        public static void SetupPageProperties()
        {
            string inpFile = Path.GetFullPath(@"..\..\..\example.html");
            string outFile = new FileInfo("Result.pdf").FullName;

            PdfVision v = new PdfVision();


            // Page size: A3 (297 x 420 mm)
            // Orientation: Portrait
            // Margins: Left: 30mm, Top: 15mm, Right: 25mm, Bottom: 15mm.

            HtmlToPdfOptions options = new HtmlToPdfOptions()
            {
                PageSetup = new PageSetup()
                {
                    PaperType = PaperType.A3,
                    Orientation = Orientation.Portrait,
                    PageMargins = new PageMargins()
                    {
                        Left = LengthUnitConverter.ToPoint(30, LengthUnit.Millimeter),
                        Top = LengthUnitConverter.ToPoint(15, LengthUnit.Millimeter),
                        Right = LengthUnitConverter.ToPoint(25, LengthUnit.Millimeter),
                        Bottom = LengthUnitConverter.ToPoint(15, LengthUnit.Millimeter)
                    }
                },
                PrintBackground = true,
                Scale = 1M,
                //Set a custom directory where will be placed portable Chromium browser. 
                //Default value depends of platform (win-x64, win-86, linux-x64 or osx-x64). 
                ChromiumBaseDirectory = Path.GetFullPath(@"..\..\..\..\..\..\Chromium\")
            };

            try
            {
                v.ConvertHtmlToPdf(inpFile, outFile, options);
                // Open the result for demonstration purposes.
                System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo(outFile) { UseShellExecute = true });
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error: {ex.Message}");
                Console.ReadLine();
            }
        }
    }
}
How to setup Page Size and Margins using VB.Net
Imports System
Imports System.IO
Imports SautinSoft.PdfVision

Namespace Sample
    Friend Class Program
        Shared Sub Main(ByVal args() As String)
            SetupPageProperties()
        End Sub
        Public Shared Sub SetupPageProperties()
            Dim inpFile As String = Path.GetFullPath("..\..\..\example.html")
            Dim outFile As String = (New FileInfo("Result.pdf")).FullName

            Dim v As New PdfVision()


            ' Page size: A3 (297 x 420 mm)
            ' Orientation: Portrait
            ' Margins: Left: 30mm, Top: 15mm, Right: 25mm, Bottom: 15mm.

            Dim options As New HtmlToPdfOptions() With {
                .PageSetup = New PageSetup() With {
                    .PaperType = PaperType.A3,
                    .Orientation = Orientation.Portrait,
                    .PageMargins = New PageMargins() With {
                        .Left = LengthUnitConverter.ToPoint(30, LengthUnit.Millimeter),
                        .Top = LengthUnitConverter.ToPoint(15, LengthUnit.Millimeter),
                        .Right = LengthUnitConverter.ToPoint(25, LengthUnit.Millimeter),
                        .Bottom = LengthUnitConverter.ToPoint(15, LengthUnit.Millimeter)
                    }
                },
                .PrintBackground = True,
                .Scale = 1D,
                .ChromiumBaseDirectory = Path.GetFullPath("..\..\..\..\..\..\Chromium\")
            }

            Try
                v.ConvertHtmlToPdf(inpFile, outFile, options)
                ' Open the result for demonstration purposes.
                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