Jak wydrukować dokument PDF w języku C#

C# Print Document Tutorial with IronPrint

This article was translated from English: Does it need improvement?
Translated
View the article in English

IronPrint to potężna biblioteka drukowania zaprojektowana w celu pomocy programistom .NET C# w integracji funkcji drukowania z ich aplikacjami. Ze swoją szeroką kompatybilnością obejmującą platformy Windows, macOS, iOS i Android, IronPrint działa spójnie i niezawodnie na różnych systemach operacyjnych. Niezależnie od tego, czy tworzysz aplikacje dla środowisk stacjonarnych, ekosystemu macOS Apple, czy platform mobilnych, takich jak iOS i Android, IronPrint upraszcza wdrażanie funkcji drukowania, oferując wszechstronne i przyjazne dla użytkownika rozwiązanie dla wszystkich potrzeb związanych z drukowaniem w środowisku .NET C#.

Szybki start: Ciche drukowanie dokumentu z IronPrint

Tylko jedna linia kodu i już drukujesz—bez dialogów, bez problemu. Użyj IronPrint.Printer.Print(...), aby w tle wysłać pliki PDF lub obrazy bezpośrednio do drukarki przy użyciu ustawień domyślnych lub niestandardowych.

  1. Install IronPrint with NuGet Package Manager

    PM > Install-Package IronPrint
  2. Skopiuj i uruchom ten fragment kodu.

    IronPrint.Printer.Print("path/to/your/document.pdf");
  3. Wdrożenie do testowania w środowisku produkcyjnym

    Rozpocznij używanie IronPrint w swoim projekcie już dziś z darmową wersją próbną

    arrow pointer

Spis treści

Drukuj dokument

Drukuj cicho

Drukuj dokumenty bezproblemowo, bez wyświetlania dialogu drukowania. Ustawienia druku można wtedy skonfigurować bezpośrednio w kodzie.

// Programmatically print a document without showing the print dialog.
// Define your print job and settings here as needed.

using System;
using IronPrint;

public class SilentPrint
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Initialize a silent print job
        var printJob = new PrintJob(document);

        // Apply specific settings as necessary
        // For example: set printer name, copies, etc.

        // Execute the print job
        printJob.PrintSilently();
    }
}
// Programmatically print a document without showing the print dialog.
// Define your print job and settings here as needed.

using System;
using IronPrint;

public class SilentPrint
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Initialize a silent print job
        var printJob = new PrintJob(document);

        // Apply specific settings as necessary
        // For example: set printer name, copies, etc.

        // Execute the print job
        printJob.PrintSilently();
    }
}
' Programmatically print a document without showing the print dialog.
' Define your print job and settings here as needed.

Imports System
Imports IronPrint

Public Class SilentPrint
	Public Shared Sub Main()
		' Create a print document instance
		Dim document = New PrintDocument("sample-document.pdf")

		' Initialize a silent print job
		Dim printJob As New PrintJob(document)

		' Apply specific settings as necessary
		' For example: set printer name, copies, etc.

		' Execute the print job
		printJob.PrintSilently()
	End Sub
End Class
$vbLabelText   $csharpLabel

Drukuj z dialogiem

Rozpocznij proces drukowania z wyświetlonym dialogiem ustawień drukowania. Pozwala to użytkownikom interaktywnie dostosować opcje drukowania.

// Start a print job with user interaction through the print dialog.

using System;
using IronPrint;

public class DialogPrint
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Initialize a print job with dialog
        var printJob = new PrintJob(document);

        // Execute the print job with display of print options dialog
        printJob.PrintWithDialog();
    }
}
// Start a print job with user interaction through the print dialog.

using System;
using IronPrint;

public class DialogPrint
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Initialize a print job with dialog
        var printJob = new PrintJob(document);

        // Execute the print job with display of print options dialog
        printJob.PrintWithDialog();
    }
}
' Start a print job with user interaction through the print dialog.

Imports System
Imports IronPrint

Public Class DialogPrint
	Public Shared Sub Main()
		' Create a print document instance
		Dim document = New PrintDocument("sample-document.pdf")

		' Initialize a print job with dialog
		Dim printJob As New PrintJob(document)

		' Execute the print job with display of print options dialog
		printJob.PrintWithDialog()
	End Sub
End Class
$vbLabelText   $csharpLabel

Zastosuj ustawienia druku

Programowo dostosuj ustawienia druku, aby sprostać określonym wymaganiom. Ta sekcja daje możliwość precyzyjnego dostrajania konfiguracji drukowania poprzez kod.

// Example code to apply custom print settings programmatically.

using System;
using IronPrint;

public class PrintSettingsExample
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Create a print job
        var printJob = new PrintJob(document);

        // Set custom print settings like duplex, color mode, etc.
        var settings = new PrintSettings
        {
            ColorMode = ColorMode.Color,
            DuplexMode = DuplexMode.OneSided,
            Copies = 2
        };

        // Apply settings to print job
        printJob.ApplySettings(settings);

        // Print the document
        printJob.PrintSilently();
    }
}
// Example code to apply custom print settings programmatically.

using System;
using IronPrint;

public class PrintSettingsExample
{
    public static void Main()
    {
        // Create a print document instance
        var document = new PrintDocument("sample-document.pdf");

        // Create a print job
        var printJob = new PrintJob(document);

        // Set custom print settings like duplex, color mode, etc.
        var settings = new PrintSettings
        {
            ColorMode = ColorMode.Color,
            DuplexMode = DuplexMode.OneSided,
            Copies = 2
        };

        // Apply settings to print job
        printJob.ApplySettings(settings);

        // Print the document
        printJob.PrintSilently();
    }
}
' Example code to apply custom print settings programmatically.

Imports System
Imports IronPrint

Public Class PrintSettingsExample
	Public Shared Sub Main()
		' Create a print document instance
		Dim document = New PrintDocument("sample-document.pdf")

		' Create a print job
		Dim printJob As New PrintJob(document)

		' Set custom print settings like duplex, color mode, etc.
		Dim settings = New PrintSettings With {
			.ColorMode = ColorMode.Color,
			.DuplexMode = DuplexMode.OneSided,
			.Copies = 2
		}

		' Apply settings to print job
		printJob.ApplySettings(settings)

		' Print the document
		printJob.PrintSilently()
	End Sub
End Class
$vbLabelText   $csharpLabel

Pobierz informacje o drukarce

Pobierz nazwy drukarek

Uzyskaj dostęp do listy wszystkich dostępnych drukarek. Pobierz nazwy drukarek zainstalowanych w systemie w celach informacyjnych lub do dynamicznego wyboru drukarki w aplikacji.

// Retrieve and display a list of printer names available on the system.

using System;
using IronPrint;

public class PrinterInfo
{
    public static void Main()
    {
        // Get an enumerable list of printer names
        var printerNames = PrinterSettings.GetAvailablePrinters();

        // Print each printer name to the console
        Console.WriteLine("Available Printers:");
        foreach (var name in printerNames)
        {
            Console.WriteLine(name);
        }
    }
}
// Retrieve and display a list of printer names available on the system.

using System;
using IronPrint;

public class PrinterInfo
{
    public static void Main()
    {
        // Get an enumerable list of printer names
        var printerNames = PrinterSettings.GetAvailablePrinters();

        // Print each printer name to the console
        Console.WriteLine("Available Printers:");
        foreach (var name in printerNames)
        {
            Console.WriteLine(name);
        }
    }
}
' Retrieve and display a list of printer names available on the system.

Imports System
Imports IronPrint

Public Class PrinterInfo
	Public Shared Sub Main()
		' Get an enumerable list of printer names
		Dim printerNames = PrinterSettings.GetAvailablePrinters()

		' Print each printer name to the console
		Console.WriteLine("Available Printers:")
		For Each name In printerNames
			Console.WriteLine(name)
		Next name
	End Sub
End Class
$vbLabelText   $csharpLabel

Często Zadawane Pytania

Jak mogę drukować dokumenty w ciszy w .NET C#?

Możesz użyć metody PrintSilently() instancji PrintJob, aby wykonywać zadania drukowania bez interakcji użytkownika. To pozwala dokumentowi być drukowanym programowo bez wyświetlania okna dialogowego drukowania.

Jak wygląda proces drukowania dokumentu z oknem dialogowym w .NET C#?

Możesz rozpocząć zadanie drukowania z interakcją użytkownika, korzystając z metody PrintWithDialog() na instancji PrintJob. To wyświetla okno dialogowe ustawień drukowania, umożliwiając użytkownikom dostosowywanie opcji przed wydrukowaniem.

Czy można zastosować niestandardowe ustawienia drukowania programowo w .NET C#?

Tak, możesz programowo zastosować niestandardowe ustawienia drukowania, tworząc obiekt PrintSettings i konfigurując jego właściwości, takie jak tryb kolorów, tryb dupleksowy i liczba kopii. Te ustawienia można następnie zastosować do instancji PrintJob.

Jak mogę uzyskać nazwy dostępnych drukarek w aplikacji .NET C#?

Możesz uzyskać nazwy dostępnych drukarek za pomocą metody PrinterSettings.GetAvailablePrinters(). To dostarcza listę nazw drukarek zainstalowanych w systemie do wyboru lub w celach informacyjnych.

Czy mogę drukować różne formaty dokumentów za pomocą biblioteki .NET C#?

Tak, biblioteka wspiera drukowanie różnych formatów dokumentów, w tym PDF, PNG, HTML, TIFF, GIF, JPEG, IMAGE i BITMAP, umożliwiając wszechstronne opcje drukowania dokumentów.

Jakie platformy są obsługiwane podczas drukowania dokumentów za pomocą biblioteki .NET C#?

Biblioteka obsługuje wiele platform, takich jak Windows, macOS, iOS i Android, zapewniając spójne i niezawodne możliwości drukowania na tych systemach operacyjnych.

Jak się różni drukowanie w ciszy od drukowania z oknem dialogowym w .NET C#?

Drukowanie w ciszy pozwala na drukowanie dokumentów programowo bez interakcji użytkownika, korzystając z metody PrintSilently(). Drukowanie z oknem dialogowym obejmuje wyświetlenie okna dialogowego drukowania dla personalizacji użytkownika, osiągane przez metodę PrintWithDialog().

Curtis Chau
Autor tekstów technicznych

Curtis Chau posiada tytuł licencjata z informatyki (Uniwersytet Carleton) i specjalizuje się w front-endowym rozwoju, z ekspertką w Node.js, TypeScript, JavaScript i React. Pasjonuje się tworzeniem intuicyjnych i estetycznie przyjemnych interfejsów użytkownika, Curtis cieszy się pracą z nowoczesnymi frameworkami i tworzeniem dobrze zorganizowanych, atrakcyjnych wizualnie podrę...

Czytaj więcej
Gotowy, aby rozpocząć?
Nuget Pliki do pobrania 41,154 | Wersja: 2026.5 just released
Still Scrolling Icon

Wciąż przewijasz?

Czy chcesz szybko dowodu? PM > Install-Package IronPrint
uruchom próbkę obserwuj, jak twój dokument trafia do drukarki.