Customizing PDF Viewer Settings with C# and .NET

Working with PDF documents in applications in C# and .NET is becoming an increasingly in-demand task. One of the key features is to customize the PDF viewing options. Using the component PDF.NET from SautinSoft allows you not only to view PDF documents, but also to manage their viewing parameters. This is especially useful for creating professional PDF documents that will be displayed according to your requirements.

The PDF Viewer Preferences determine how the document will be displayed in the PDF viewer. For example:

  • Centering the viewport.
  • Automatic scaling of the window to fit the page size.
  • Hiding the menu and toolbar.
  • Setting the page display mode (for example, fullscreen mode).

The following example shows, how to set up PDF settings for an existing PDF document:

  1. Add SautinSoft.PDF from NuGet.
  2. Load a PDF Document.
  3. Get the viewing settings that specify how the document is displayed on the screen.
  4. Change the viewing settings.
  5. Save the document.

Complete code

using System;
using System.IO;
using SautinSoft;
using SautinSoft.Pdf;
using SautinSoft.Pdf.Content;

namespace Sample
{
    class Sample
    {
        /// <summary>
        /// Get and set PDF viewer preferences.
        /// </summary>
        /// <remarks>
        /// Details: https://sautinsoft.com/products/pdf/help/net/developer-guide/viewer-preferences.php
        /// </remarks>
        static void Main(string[] args)
        {
            // Before starting this example, please get a free trial key:
            // https://sautinsoft.com/start-for-free/

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

            string pdfFile = Path.GetFullPath(@"..\..\..\simple text.pdf");

            using (var document = PdfDocument.Load(pdfFile))
            {
                // Get viewer preferences specifying the way the document should be displayed on the screen.
                var viewerPreferences = document.ViewerPreferences;

                // Modify viewer preferences.
                viewerPreferences.CenterWindow = false;
                viewerPreferences.FitWindow = true;
                viewerPreferences.HideMenubar = true;
                viewerPreferences.HideToolbar = true;
                viewerPreferences.NonFullScreenPageMode = PdfPageMode.FullScreen;
                viewerPreferences.ViewArea = PdfPageBoundaryType.MediaBox;

                document.Save("Viewer Preferences.pdf");
            }

            System.Diagnostics.Process.Start(new System.Diagnostics.ProcessStartInfo("Viewer Preferences.pdf") { UseShellExecute = true });
        }
    }
}

Download

Option Infer On

Imports System
Imports System.IO
Imports SautinSoft
Imports SautinSoft.Pdf
Imports SautinSoft.Pdf.Content

Namespace Sample
	Friend Class Sample
		''' <summary>
		''' Get and set PDF viewer preferences.
		''' </summary>
		''' <remarks>
		''' Details: https://sautinsoft.com/products/pdf/help/net/developer-guide/viewer-preferences.php
		''' </remarks>
		Shared Sub Main(ByVal args() As String)
			' Before starting this example, please get a free trial key:
			' https://sautinsoft.com/start-for-free/

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

			Dim pdfFile As String = Path.GetFullPath("..\..\..\simple text.pdf")

			Using document = PdfDocument.Load(pdfFile)
				' Get viewer preferences specifying the way the document should be displayed on the screen.
				Dim viewerPreferences = document.ViewerPreferences

				' Modify viewer preferences.
				viewerPreferences.CenterWindow = False
				viewerPreferences.FitWindow = True
				viewerPreferences.HideMenubar = True
				viewerPreferences.HideToolbar = True
				viewerPreferences.NonFullScreenPageMode = PdfPageMode.FullScreen
				viewerPreferences.ViewArea = PdfPageBoundaryType.MediaBox

				document.Save("Viewer Preferences.pdf")
			End Using

			System.Diagnostics.Process.Start(New System.Diagnostics.ProcessStartInfo("Viewer Preferences.pdf") With {.UseShellExecute = True})
		End Sub
	End Class
End Namespace

Download


If you need a new code example or have a question: email us at support@sautinsoft.com or ask at Online Chat (right-bottom corner of this page) or use the Form below:



Questions and suggestions from you are always welcome!

We are developing .Net components since 2002. We know PDF, DOCX, RTF, HTML, XLSX and Images formats. If you need any assistance with creating, modifying or converting documents in various formats, we can help you. We will write any code example for you absolutely free.