Skip to footer content
USING IRONPRINT

How to Print a PDF in VB.NET Using IronPrint

Printing PDF documents in VB.NET used to be complicated, often requiring Adobe Reader dependencies or tricky workarounds. IronPrint changes this by providing a straightforward, dependency-free solution. It works across Windows, macOS, and mobile platforms. PDF printing in VB.NET becomes as simple as calling a single method.

This guide shows how to print silently, display the Windows print dialog, customize settings, and manage multiple printers in VB.NET.

How to get started with IronPrint?

Installing IronPrint takes just seconds through NuGet Package Manager. Open your Package Manager Console in Visual Studio and run:

Install-Package IronPrint

After installation, configure your project by importing the namespace and applying your license key as we have in the following code snippet:

Imports IronPrint
' Apply your license key (get a free trial key from Iron Software website)
License.LicenseKey = "YOUR-LICENSE-KEY"
Imports IronPrint
' Apply your license key (get a free trial key from Iron Software website)
License.LicenseKey = "YOUR-LICENSE-KEY"
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

IronPrint supports .NET Framework 4.6.2+ and all modern .NET versions (5, 6, 7, 8+), ensuring compatibility with both legacy and cutting-edge VB.NET PDF printing projects. The library supports seamless handling of PDF, PNG, HTML, TIFF, GIF, JPEG, and BMP formats through its unified printing API.

How to print PDF documents silently in VB.NET?

Silent printing enables automatic PDF document printing without user interaction, perfect for automated workflows and batch processing. According to Microsoft's documentation on printing in .NET, traditional approaches require complex PrintDocument implementations. Here's how to print a PDF file with IronPrint:

Imports IronPrint
Module PrintingExample
    Sub Main()
        Dim pdfPath As String = "invoice.pdf"
    ' Print PDF to default printer in VB.NET
        Printer.Print(pdfPath)
        ' Create a PrintSettings object
        Dim settings As New PrintSettings()
        settings.PrinterName = "Microsoft Print to PDF" ' exact printer name
        ' Print PDF to a specific printer programmatically
        Printer.Print(pdfPath, settings)
    End Sub
End Module
Imports IronPrint
Module PrintingExample
    Sub Main()
        Dim pdfPath As String = "invoice.pdf"
    ' Print PDF to default printer in VB.NET
        Printer.Print(pdfPath)
        ' Create a PrintSettings object
        Dim settings As New PrintSettings()
        settings.PrinterName = "Microsoft Print to PDF" ' exact printer name
        ' Print PDF to a specific printer programmatically
        Printer.Print(pdfPath, settings)
    End Sub
End Module
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

This code shows how to send the loaded PDF document directly to the printer queue without displaying any dialogs. The Print method automatically uses the system's default printer. Otherwise, setting a specific printer's name in the print settings and using it when printing PDF files lets you specify exactly which printer to use.

IronPrint handles all the complex PDF rendering internally, eliminating the need for Adobe Acrobat Reader or other external dependencies. For more advanced scenarios, check the print settings documentation.

How to show print dialog before printing?

Sometimes users need control over print settings before sending documents to the printer. IronPrint's ShowPrintDialog method displays the familiar Windows print dialog. This lets you choose the printer you want to use for your printing job.

Imports IronPrint
Module DialogPrinting
    Sub Main()
        ' Show print dialog for PDF printing in VB.NET
        Printer.ShowPrintDialog("report.pdf")
    End Sub
End Module
Imports IronPrint
Module DialogPrinting
    Sub Main()
        ' Show print dialog for PDF printing in VB.NET
        Printer.ShowPrintDialog("report.pdf")
    End Sub
End Module
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

This approach gives users full control over printer selection, page ranges, copies, and other settings through the standard Windows interface. The method returns after the user either prints or cancels the dialog, making it easy to integrate into existing Windows Forms applications. For more dialog options, see the print dialog examples.

How to Print a PDF in VB.NET Using IronPrint: Figure 1 - Print dialog

How to customize PDF printing settings?

IronPrint provides granular control over print settings through the PrintSettings class. You can programmatically configure orientation, DPI, copies, and more for your VB.NET PDF printing needs:

Imports IronPrint
Module CustomPrintSettings
    Sub Main()
        ' Create custom print settings for PDF printing in VB.NET
        Dim settings As New PrintSettings() With {
            .Dpi = 300,
            .NumberOfCopies = 2,
            .PaperOrientation = PaperOrientation.Landscape,
            .PaperSize = PaperSize.A4,
            .PrinterName = "Office Printer"
        }
        ' Apply settings when printing PDF programmatically
        Printer.Print("document.pdf", settings)
    End Sub
End Module
Imports IronPrint
Module CustomPrintSettings
    Sub Main()
        ' Create custom print settings for PDF printing in VB.NET
        Dim settings As New PrintSettings() With {
            .Dpi = 300,
            .NumberOfCopies = 2,
            .PaperOrientation = PaperOrientation.Landscape,
            .PaperSize = PaperSize.A4,
            .PrinterName = "Office Printer"
        }
        ' Apply settings when printing PDF programmatically
        Printer.Print("document.pdf", settings)
    End Sub
End Module
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

These settings give you complete control over the PDF printing process. The Dpi property ensures high-quality output for professional documents, while NumberOfCopies eliminates the need for manual loops. Setting PaperOrientation and PaperSize ensures PDF files print correctly regardless of their original formatting. Learn more about advanced print customization.

How to select and manage printers?

IronPrint makes printer discovery and selection straightforward with the GetPrinterNames method:

Imports IronPrint
Module PrinterManagement
    Sub Main()
        ' Get all available printers for VB.NET PDF printing
        Dim printers As List(Of String) = Printer.GetPrinterNames()
        ' Display available printers
        For Each printerName As String In printers
            Console.WriteLine($"Found printer: {printerName}")
        Next
        ' Print PDF to first available printer
        If printers.Count > 0 Then
            Printer.PrintToPrinter("document.pdf", printers(0))
        End If
    End Sub
End Module
Imports IronPrint
Module PrinterManagement
    Sub Main()
        ' Get all available printers for VB.NET PDF printing
        Dim printers As List(Of String) = Printer.GetPrinterNames()
        ' Display available printers
        For Each printerName As String In printers
            Console.WriteLine($"Found printer: {printerName}")
        Next
        ' Print PDF to first available printer
        If printers.Count > 0 Then
            Printer.PrintToPrinter("document.pdf", printers(0))
        End If
    End Sub
End Module
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

This functionality enables dynamic printer selection in multi-printer environments, allowing applications to intelligently route documents to appropriate printers based on availability or document type. Explore more printer information features.

How to Print a PDF in VB.NET Using IronPrint: Figure 2

What are common issues and solutions?

When implementing PDF printing in VB.NET, developers often encounter these common issues:

Issue: "Printer not found" error

Verify the printer name matches exactly using GetPrinterNames(). Printer names are case-sensitive and must match Windows registry entries precisely.

Issue: PDF prints as blank pages

Ensure the PDF file path is correct and the file isn't corrupted. Use absolute paths for reliability and verify file accessibility before printing.

Issue: Print quality is poor

Increase the DPI setting in PrintSettings to 300 or higher for professional-quality output. Default settings may use a lower resolution for faster processing.

Issue: Access denied errors

Run your application with appropriate permissions and ensure the user account has print privileges for the target printer.

' Robust error handling for VB.NET PDF printing
Try
    If System.IO.File.Exists("document.pdf") Then
        Printer.Print("document.pdf")
    Else
        MessageBox.Show("PDF file not found")
    End If
Catch ex As Exception
    MessageBox.Show($"Printing failed: {ex.Message}")
End Try
' Robust error handling for VB.NET PDF printing
Try
    If System.IO.File.Exists("document.pdf") Then
        Printer.Print("document.pdf")
    Else
        MessageBox.Show("PDF file not found")
    End If
Catch ex As Exception
    MessageBox.Show($"Printing failed: {ex.Message}")
End Try
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

How to Print a PDF in VB.NET Using IronPrint: Figure 3 - Example error

For additional troubleshooting assistance, consult the comprehensive troubleshooting guide or reach out to Iron Software's technical support.

Conclusion

IronPrint simplifies PDF printing in VB.NET, transforming a complex challenge into a straightforward task. With just a few lines of code, you can implement silent printing, display print dialogs, customize settings, and manage multiple printers. For complete document workflows, IronPrint integrates seamlessly with IronPDF, a powerful PDF library, allowing you to generate PDFs programmatically and print them immediately, all within the same application.

Ready to simplify PDF printing in your VB.NET applications? Start your free trial today and experience professional-grade printing capabilities with full technical support.

Frequently Asked Questions

How can I print a PDF document using VB.NET?

Using IronPrint, printing a PDF document in VB.NET is straightforward. You simply need to call a single method without worrying about dependencies like Adobe Reader.

Does IronPrint require any external dependencies?

No, IronPrint provides a dependency-free solution for printing PDFs, making it easier to integrate into your .NET applications.

Is IronPrint compatible with macOS for PDF printing?

Yes, IronPrint works seamlessly across Windows, macOS, and mobile platforms, allowing you to print PDFs in VB.NET across different operating systems.

Can I customize print settings with IronPrint in VB.NET?

Yes, IronPrint allows you to implement custom print settings, including silent printing and dialog options, providing flexibility in your .NET applications.

What makes IronPrint unique compared to other PDF printing solutions?

IronPrint offers a simple and efficient PDF printing solution without the need for Adobe Reader or complex workarounds, making it accessible for developers using VB.NET.

Curtis Chau
Technical Writer

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.

...

Read More