Namespace IronPdf.PrintDoc
Classes
PdfPrintDocument
Provides advanced control over printing PDF documents to physical printers. Extends System.Drawing.Printing.PrintDocument for full Windows print integration.
For simple printing, use
Example - Advanced printing with dialog:
using System.Drawing.Printing;
using System.Windows.Forms;
var pdf = PdfDocument.FromFile("report.pdf");
var settings = new PdfPrintSettings();
var printerSettings = new PrinterSettings();
var controller = new StandardPrintController();
var printDoc = new PdfPrintDocument(pdf, settings, printerSettings, controller);
// Show print dialog:
var dialog = new PrintDialog { Document = printDoc };
if (dialog.ShowDialog() == DialogResult.OK)
{
printDoc.Print();
}
// Or print preview:
var preview = new PrintPreviewDialog { Document = printDoc };
preview.ShowDialog();
PdfPrintMultiplePages
Configures N-up printing to place multiple PDF pages on a single physical sheet. Reduces paper usage by arranging pages in a grid layout (e.g., 2-up, 4-up, 6-up).
Example - Common configurations:
// 2-up printing (2 pages per sheet, side by side):
var twoUp = new PdfPrintMultiplePages(2, 1, PdfPaperOrientation.Landscape, 5f);
// 4-up printing (4 pages per sheet, 2x2 grid):
var fourUp = new PdfPrintMultiplePages(2, 2, PdfPaperOrientation.Portrait, 3f);
// 6-up printing (6 pages per sheet, 3x2 grid):
var sixUp = new PdfPrintMultiplePages(3, 2, PdfPaperOrientation.Landscape, 2f);
// Use with print settings:
var settings = new PdfPrintSettings(fourUp);
pdf.Print(settings);
PdfPrintSettings
Controls physical printing options for PDF documents including layout and page arrangement. Configure how PDFs are sent to printers with support for multiple pages per sheet.
// Print 2 pages per sheet:
var multiPages = new PdfPrintMultiplePages(2, 1); // 2 rows, 1 column
var settings = new PdfPrintSettings(multiPages);
pdf.Print(settings);
// Print 4 pages per sheet (2x2):
var fourUp = new PdfPrintMultiplePages(2, 2);
var settings = new PdfPrintSettings(fourUp);
// Standard single page printing:
var settings = new PdfPrintSettings(null);Multiple pages per sheet saves paper for drafts and handouts
Text may be small when printing multiple pages per sheet
See: https://ironpdf.com/how-to/print-pdf/