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 cicho wysłać PDF lub obrazy prosto do drukarki, używając domyślnych lub niestandardowych ustawień.

  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 tle w .NET C#?

Można użyć metody PrintSilently() instancji PrintJob do wykonania zadań drukowania bez interakcji użytkownika. Pozwala to na drukowanie dokumentu programowo bez wyświetlania okna dialogowego drukowania.

Jak wygląda proces drukowania dokumentu za pomocą okna dialogowego PRINT w .NET C#?

Można zainicjować zadanie drukowania z interakcją użytkownika, używając metody PrintWithDialog() na instancji PrintJob. Spowoduje to wyświetlenie okna dialogowego ustawień drukowania, umożliwiającego użytkownikom dostosowanie opcji przed drukowaniem.

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

Tak, można programowo zastosować niestandardowe ustawienia drukowania, tworząc obiekt PrintSettings i konfigurując właściwości, takie jak tryb kolorów, tryb dwustronnego drukowania oraz liczbę kopii. Ustawienia te można następnie zastosować do instancji PrintJob.

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

Dostępne nazwy drukarek można pobrać za pomocą metody PrinterSettings.GetAvailablePrinters(). Zapewnia to wyliczalną listę nazw drukarek zainstalowanych w systemie do wyboru lub w celach informacyjnych.

Czy mogę drukować dokumenty w różnych formatach za pomocą biblioteki .NET C#?

Tak, biblioteka obsługuje drukowanie różnych formatów dokumentów, w tym PDF, PNG, HTML, TIFF, GIF, JPEG, IMAGE i BITMAP, co zapewnia wszechstronne opcje drukowania dokumentów.

Jakie platformy są obsługiwane w przypadku drukowania dokumentów przy użyciu biblioteki .NET C# C#?

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

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

Ciche drukowanie pozwala na drukowanie dokumentów programowo bez interakcji użytkownika, przy użyciu metody PrintSilently(). Drukowanie z oknem dialogowym polega na wyświetleniu okna dialogowego drukowania w celu dostosowania przez użytkownika, co osiąga się za pomocą metody 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 38,948 | Wersja: 2026.4 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.