Back to Devexpress

PdfViewerControl.Print(PdfPrinterSettings, Boolean) Method

wpf-devexpress-dot-xpf-dot-pdfviewer-dot-pdfviewercontrol-dot-print-x28-devexpress-dot-pdf-dot-pdfprintersettings-system-dot-boolean-x29.md

latest4.7 KB
Original Source

PdfViewerControl.Print(PdfPrinterSettings, Boolean) Method

Prints a document using the specified PDF print settings without invoking the Print dialog.

Namespace : DevExpress.Xpf.PdfViewer

Assembly : DevExpress.Xpf.PdfViewer.v25.2.dll

NuGet Package : DevExpress.Wpf.PdfViewer

Declaration

csharp
public virtual void Print(
    PdfPrinterSettings printerSettings,
    bool showPrintStatus = true
)
vb
Public Overridable Sub Print(
    printerSettings As PdfPrinterSettings,
    showPrintStatus As Boolean = True
)

Parameters

NameTypeDescription
printerSettingsPdfPrinterSettings

A PdfPrinterSettings value, specifying the PDF printing options.

|

Optional Parameters

NameTypeDefaultDescription
showPrintStatusBooleanTrue

true, to show the printing status; otherwise, false.

|

Example

View Example

This example shows how to print a document with custom printer settings.

csharp
using System.Drawing.Printing;
using System.Windows;
using DevExpress.Pdf;

public MainWindow() {
    InitializeComponent();

    // Load a PDF document.
    pdfViewer.OpenDocument(@"..\..\Demo.pdf");
}

private void pdfViewer_DocumentLoaded(object sender, RoutedEventArgs e) {
    // If required, declare and specify the system printer settings.
    PrinterSettings printerSettings = new PrinterSettings();
    printerSettings.PrinterName = "Microsoft XPS Document Writer";
    printerSettings.PrintToFile = true;
    printerSettings.PrintFileName = @"..\..\Demo.xps";

    // Declare the PDF printer settings.
    // If required, pass the system settings to the PDF printer settings constructor.
    PdfPrinterSettings pdfPrinterSettings = new PdfPrinterSettings(printerSettings);

    // Specify the PDF printer settings.
    pdfPrinterSettings.PageOrientation = PdfPrintPageOrientation.Auto;
    pdfPrinterSettings.PageNumbers = new int[] { 1, 3, 4, 5 };
    pdfPrinterSettings.ScaleMode = PdfPrintScaleMode.CustomScale;
    pdfPrinterSettings.Scale = 90;

    // Print the document using the specified printer settings and show print status parameter.
    pdfViewer.Print(pdfPrinterSettings, true);
}
vb
Imports System.Drawing.Printing
Imports System.Windows
Imports DevExpress.Pdf

Public Sub New()
    InitializeComponent()

    ' Load a PDF document.
    pdfViewer.OpenDocument("..\..\Demo.pdf")
End Sub

Private Sub pdfViewer_DocumentLoaded(ByVal sender As Object, ByVal e As RoutedEventArgs)
    ' If required, declare and specify the system printer settings.
    Dim printerSettings As New PrinterSettings()
    printerSettings.PrinterName = "Microsoft XPS Document Writer"
    printerSettings.PrintToFile = True
    printerSettings.PrintFileName = "..\..\Demo.xps"

    ' Declare the PDF printer settings.
    ' If required, pass the system settings to the PDF printer settings constructor.
    Dim pdfPrinterSettings As New PdfPrinterSettings(printerSettings)

    ' Specify the PDF printer settings.
    pdfPrinterSettings.PageOrientation = PdfPrintPageOrientation.Auto
    pdfPrinterSettings.PageNumbers = New Integer() { 1, 3, 4, 5 }
    pdfPrinterSettings.ScaleMode = PdfPrintScaleMode.CustomScale
    pdfPrinterSettings.Scale = 90

    ' Print the document using the specified printer settings and show print status parameter.
    pdfViewer.Print(pdfPrinterSettings, True)
End Sub
xaml
<Window
        xmlns:dxpdf="http://schemas.devexpress.com/winfx/2008/xaml/pdf"
        x:Class="SpecifyPrinterSettings.MainWindow"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
        <dxpdf:PdfViewerControl x:Name="pdfViewer" 
                                DocumentLoaded="pdfViewer_DocumentLoaded"/>
</Window>

See Also

PdfViewerControl Class

PdfViewerControl Members

DevExpress.Xpf.PdfViewer Namespace