Przejdź do treści stopki
KORZYSTANIE Z IRONPRINT

C# Wysyłanie pliku PDF do drukarki (samouczek krok po kroku)

PDF oznacza "Format Dokumentu Przenośnego". Istnieje wiele scenariuszy, w których programista musi drukować pliki PDF programowo w aplikacji. W C# może to być bardzo żmudne zadanie, ale dzięki IronPDF stało się to bardzo łatwe do zrobienia za pomocą zaledwie kilku linii kodu. To narzędzie pozwala nam drukować dokumenty PDF z domyślnymi ustawieniami drukarki, a także z opcjami dostosowanego drukowania. W tym samouczku nauczysz się, jak drukować pliki PDF, używając języka C#.

Tematy omówione w tym samouczku

Zostaną omówione następujące tematy:

  • Biblioteka IronPDF
  • Tworzenie projektu konsolowego w C#
  • Instalacja IronPDF
    1. Menedżer pakietów NuGet
    2. Konsola Menedżera pakietów NuGet
    3. Użycie plików DLL
  • Dodanie przestrzeni nazw IronPDF
  • Drukowanie dokumentów PDF
    1. Tworzenie dokumentu PDF i drukowanie PDFów
    2. Tworzenie dokumentu PDF z adresów URL i drukowanie
    3. Zaawansowane drukowanie
  • Podsumowanie

IronPDF

IronPDF to Biblioteka PDF dla .NET Framework, która pozwala programistom łatwo tworzyć pliki PDF. Renderowanie IronPDF jest "pixel-perfect" dla desktopowych wersji przeglądarki Google Chrome. IronPDF łatwo tworzy dokumenty PDF za pomocą jednej linii kodu. Może przetwarzać dokumenty PDF bez programu Acrobat Reader lub innych przeglądarek PDF.

IronPDF może być używany do tworzenia plików PDF z ciągów HTML, z plików HTML lub z adresów URL. Następnie może wysłać te pliki do domyślnej drukarki do drukowania.

Dostępna jest bezpłatna wersja próbna IronPDF.

Niektóre ważne cechy biblioteki IronPDF

  • Tworzenie dokumentów PDF z HTML 4 i 5, CSS i JavaScript
  • Generowanie dokumentów PDF z adresów URL
  • Drukowanie PDF na domyślnej, fizycznej drukarce
  • Ustawienia zadania drukowania (dla drukowania konkretnych stron, itp.)
  • Ładowanie adresów URL z niestandardowymi poświadczeniami sieciowymi, agentami użytkownika, proxy, ciasteczkami, nagłówkami HTTP oraz polami formularzy lub zmiennymi, co pozwala na dostęp do stron internetowych za formularzami logowania HTML
  • Odczyt i wypełnienie danych pól formularzy PDF (Portable Document Format)
  • Ekstrakcja obrazów i tekstów z plików PDF
  • Cyfrowe podpisywanie dokumentów PDF
  • Nie wymaga bibliotek zewnętrznych

1. Utwórz projekt C

Ten samouczek będzie używać Visual Studio 2022, ale możesz także użyć wcześniejszych wersji.

  • Otwórz Visual Studio 2022.
  • Utwórz nowy projekt konsolowy .NET w C#. Wybierz aplikację konsolową .NET Core.
How to Send PDFs to Printer Using C#, Figure 1: Aplikacja konsolowa

Aplikacja konsolowa

  • Nadaj nazwę projektowi, np. DemoApp.
  • .NET Framework 6.0 to najnowsza i najbardziej stabilna wersja, której będziemy używać. Kliknij przycisk "Utwórz".
How to Send PDFs to Printer Using C#, Figure 2: .NET Framework

.NET Framework

2. Zainstaluj bibliotekę IronPDF

Aby zainstalować bibliotekę IronPDF, możemy użyć dowolnej z poniższych metod:

2.1. Menedżer pakietów NuGet

Możemy zainstalować bibliotekę IronPDF C# .NET Core z Menedżera pakietów NuGet.

Otwórz Menedżera pakietów, klikając Narzędzia > Menedżer pakietów NuGet > Zarządzaj pakietami NuGet dla rozwiązania.

How to Send PDFs to Printer Using C#, Figure 3: Menedżer pakietów

Menedżer pakietów

Lub kliknij prawym przyciskiem myszy na projekcie w Solution Explorer i kliknij Zarządzaj pakietami NuGet.

How to Send PDFs to Printer Using C#, Figure 4: Menedżer pakietów NuGet - Eksplorator rozwiązań

Menedżer pakietów NuGet - Eksplorator rozwiązań

Wyszukaj IronPDF. Wybierz IronPDF i kliknij Instaluj. Rozpocznie się instalacja biblioteki.

How to Send PDFs to Printer Using C#, Figure 5: Zainstaluj IronPDF

Zainstaluj IronPDF

2.2. Konsola Menedżera pakietów NuGet

Otwórz Konsolę Menedżera pakietów NuGet, klikając Narzędzia > Menedżer pakietów NuGet > Konsola Menedżera pakietów.

Wpisz następujące polecenie w linii poleceń:

Install-Package IronPrint
How to Send PDFs to Printer Using C#, Figure 6: NuGet Konsola menedżera pakietów

Konsola menedżera pakietów

2.3. Użycie pliku DLL

Innym sposobem na użycie IronPDF w projekcie jest dodanie pliku DLL z biblioteki IronPDF. Możesz pobrać plik DLL z tego linka.

  • Pobierz plik ZIP z biblioteką DLL. Rozpakuj go do wybranego folderu.
  • Otwórz projekt w Visual Studio. W Solution Explorer, kliknij prawym przyciskiem myszy na "Odwołania" i przeszukaj plik DLL IronPDF.

2.4. Dodaj przestrzeń nazw IronPDF

Po zakończeniu instalacji dodaj IronPDF i System.Drawing przestrzeń nazw do pliku programu.

using IronPdf;
using System.Drawing;
using IronPdf;
using System.Drawing;
Imports IronPdf
Imports System.Drawing
$vbLabelText   $csharpLabel

Uwaga: Musisz dodać te odwołania do każdego pliku, w którym chcesz używać funkcji IronPDF.

IronPDF jest zainstalowany i gotowy! Teraz możemy utworzyć nasz pierwszy dokument PDF dla aplikacji .NET Core i wysłać go do domyślnej drukarki do wydruku. Przyjrzyjmy się niektórym z nich poniżej, korzystając z przykładów kodu.

3. Drukowanie dokumentów PDF

3.1. Tworzenie i drukowanie dokumentu PDF z HTML

Przetwarzanie ciągów HTML i konwersja ich na format PDF jest bardzo łatwe. Ten nowo utworzony plik może być następnie wydrukowany przy użyciu IronPDF. Oto kod, który łatwo tworzy PDF.

// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render any HTML fragment to a PDF document
using var pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render any HTML fragment to a PDF document
using var pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
' Create an instance of ChromePdfRenderer
Dim chromePdfRenderer = New IronPdf.ChromePdfRenderer()

' Render any HTML fragment to a PDF document
Dim pdfDocument = chromePdfRenderer.RenderHtmlAsPdf("<h1>Hello IronPdf</h1><p>This tutorial will help to print this text to a PDF file.</p>")

' Send the PDF to the default printer
pdfDocument.Print()

' Create a PrintDocument object that can be used for further configurations
Dim printDocument As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
$vbLabelText   $csharpLabel

Ten kod utworzy plik PDF z zawartością HTML przekazaną do funkcji RenderHtmlAsPdf. Ta funkcja wykonuje konwersję fragmentów HTML na dokument PDF.

Musisz być zaznajomiony z tagami HTML, aby generować pliki PDF lub strony PDF przy użyciu biblioteki IronPDF. Używamy funkcji Print, aby wysłać wynik pliku PDF do drukarki. Pojawi się dialog drukarki, umożliwiając Ci potwierdzenie zadania drukowania.

3.2. Tworzenie i drukowanie dokumentu PDF z URL

Możesz również tworzyć dokumenty PDF za pomocą URL:

// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render a PDF from a URL
var pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
// Create an instance of ChromePdfRenderer
var chromePdfRenderer = new IronPdf.ChromePdfRenderer();

// Render a PDF from a URL
var pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/");

// Send the PDF to the default printer
pdfDocument.Print();

// Create a PrintDocument object that can be used for further configurations
System.Drawing.Printing.PrintDocument printDocument = pdfDocument.GetPrintDocument();
' Create an instance of ChromePdfRenderer
Dim chromePdfRenderer = New IronPdf.ChromePdfRenderer()

' Render a PDF from a URL
Dim pdfDocument = chromePdfRenderer.RenderUrlAsPdf("https://ironpdf.com/")

' Send the PDF to the default printer
pdfDocument.Print()

' Create a PrintDocument object that can be used for further configurations
Dim printDocument As System.Drawing.Printing.PrintDocument = pdfDocument.GetPrintDocument()
$vbLabelText   $csharpLabel

Tutaj tworzony jest plik PDF z określonego URL, a następnie drukowany.

How to Send PDFs to Printer Using C#, Figure 7: Drukowanie PDF utworzonego z URL

Drukowanie PDF utworzonego z URL

4. Zaawansowane opcje drukowania

IronPDF jest wszechstronny i całkowicie zdolny do obsługi funkcji drukowania, takich jak znajdowanie drukarki i ustawianie rozdzielczości druku.

4.1 Określanie drukarki

Aby określić drukarkę, wystarczy uzyskać obiekt aktualnego dokumentu do drukowania (używając metody GetPrintDocument), a następnie użyć właściwości PrinterSettings.PrinterName. Możesz wybrać dowolną dostępną drukarkę.

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Print the document
    printDocument.Print();
}
using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Print the document
    printDocument.Print();
}
Using printDocument = pdfDocument.GetPrintDocument()
	' Specify the printer name
	printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF"

	' Print the document
	printDocument.Print()
End Using
$vbLabelText   $csharpLabel

W powyższym przykładzie kodu jako drukarkę wybrano "Microsoft Print to PDF". Więcej informacji na temat ustawiania specyficznych ustawień drukowania można znaleźć na stronach dokumentacji.

4.2 Ustawianie rozdzielczości drukarki

Możesz również ustawić rozdzielczość drukowania PDF. Rozdzielczość odnosi się do jakości druku w kategoriach liczby pikseli. Można ustawić rozdzielczość dokumentu drukowania używając właściwości DefaultPageSettings.PrinterResolution dokumentu PDF.

// Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
{
    Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
    X = 1200,
    Y = 1200
};
// Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
{
    Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
    X = 1200,
    Y = 1200
};
' Set custom printer resolution
printDocument.DefaultPageSettings.PrinterResolution = New System.Drawing.Printing.PrinterResolution With {
	.Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
	.X = 1200,
	.Y = 1200
}
$vbLabelText   $csharpLabel

4.3 Tracing Printing Processes Using C

W poniższym przykładzie kodu zobaczysz, jak zmienić nazwę drukarki, ustawić rozdzielczość oraz uzyskać licznik stron wydrukowanych.

int printedPages;

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Set custom printer resolution
    printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
    {
        Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
        X = 1200,
        Y = 1200
    };

    // Track number of printed pages
    printedPages = 0;
    printDocument.PrintPage += (sender, args) => printedPages++;

    // Print the document
    printDocument.Print();
}
int printedPages;

using (var printDocument = pdfDocument.GetPrintDocument())
{
    // Specify the printer name
    printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF";

    // Set custom printer resolution
    printDocument.DefaultPageSettings.PrinterResolution = new System.Drawing.Printing.PrinterResolution
    {
        Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
        X = 1200,
        Y = 1200
    };

    // Track number of printed pages
    printedPages = 0;
    printDocument.PrintPage += (sender, args) => printedPages++;

    // Print the document
    printDocument.Print();
}
Dim printedPages As Integer

Using printDocument = pdfDocument.GetPrintDocument()
	' Specify the printer name
	printDocument.PrinterSettings.PrinterName = "Microsoft Print to PDF"

	' Set custom printer resolution
	printDocument.DefaultPageSettings.PrinterResolution = New System.Drawing.Printing.PrinterResolution With {
		.Kind = System.Drawing.Printing.PrinterResolutionKind.Custom,
		.X = 1200,
		.Y = 1200
	}

	' Track number of printed pages
	printedPages = 0
'INSTANT VB WARNING: An assignment within expression was extracted from the following statement:
'ORIGINAL LINE: printDocument.PrintPage += (sender, args) => printedPages++;
	AddHandler printDocument.PrintPage, Sub(sender, args) printedPages
	printedPages += 1

	' Print the document
	printDocument.Print()
End Using
$vbLabelText   $csharpLabel

5. Podsumowanie

IronPDF to kompletne rozwiązanie do pracy z dokumentami PDF. Zapewnia możliwość konwersji z różnych formatów do PDF. Manipulacja i formatowanie plików PDF staje się bardzo łatwe dzięki funkcjom biblioteki IronPDF. Wszystko czego potrzeba to zaledwie kilka linii kodu, aby utworzyć i sformatować plik PDF. Może także drukować PDF programowo. Robi to, wysyłając PDF do domyślnej drukarki komputera. Możemy albo wyświetlić okna dialogowe drukowania użytkownikom, albo drukować bez potwierdzenia, używając przeciążeń metody Print.

Darmowy okres próbny IronPDF jest dostępny, aby przetestować jego pełny potencjał do generowania i drukowania dokumentów PDF w Twoich aplikacjach. Więcej informacji na temat licencji można znaleźć pod tym linkiem.

Dodatkowo, obecna specjalna oferta pozwala na uzyskanie pięciu produktów Iron Software za cenę tylko dwóch.

Często Zadawane Pytania

Jak mogę wydrukować dokument PDF programowo w języku C#?

Możesz użyć IronPDF do programowego drukowania dokumentów PDF w języku C#. Korzystając z metod takich jak PRINT, możesz wysyłać pliki PDF do domyślnej lub określonej drukarki z możliwością dostosowania opcji drukowania.

Jakie są kroki instalacji biblioteki PDF do drukowania w języku C#?

Aby zainstalować bibliotekę IronPDF, można użyć menedżera pakietów NuGet w Visual Studio, konsoli menedżera pakietów NuGet lub dodać bibliotekę za pomocą plików DLL.

Czy za pomocą tej biblioteki mogę utworzyć plik PDF z kodu HTML?

Tak, IronPDF umożliwia tworzenie plików PDF z HTML przy użyciu metody RenderHtmlAsPdf. Umożliwia to konwersję HTML, CSS i JavaScript na dokumenty PDF.

Jak wysłać plik PDF do konkretnej drukarki za pomocą tej biblioteki?

Aby wysłać plik PDF do określonej drukarki, można ustawić właściwość PrinterSettings.PrinterName obiektu PrintDocument w IronPDF na nazwę żądanej drukarki.

Jakie zaawansowane opcje drukowania obsługuje ta biblioteka?

IronPDF obsługuje zaawansowane opcje drukowania, takie jak określanie ustawień drukarki, dostosowywanie rozdzielczości wydruku oraz śledzenie liczby wydrukowanych stron.

Czy za pomocą tej biblioteki PDF można ustawić niestandardowe rozdzielczości drukowania?

Tak, można ustawić niestandardowe rozdzielczości drukowania za pomocą właściwości DefaultPageSettings.PrinterResolution obiektu PrintDocument w IronPDF.

Jak za pomocą tej biblioteki mogę przekształcić adres URL w plik PDF?

Możesz renderować adres URL jako plik PDF za pomocą metody RenderUrlAsPdf biblioteki IronPDF, która pozwala konwertować strony internetowe na dokumenty PDF.

Czy ta biblioteka oferuje bezpłatną wersję próbną?

Tak, IronPDF oferuje bezpłatną wersję próbną, która pozwala użytkownikom zapoznać się z jego możliwościami w zakresie generowania i drukowania dokumentów PDF.

Czy mogę śledzić liczbę stron wydrukowanych przy użyciu tej biblioteki?

Tak, IronPDF umożliwia śledzenie liczby wydrukowanych stron poprzez dostęp do właściwości obiektu PrintDocument podczas zadania drukowania.

Z jakimi platformami jest kompatybilna ta biblioteka do drukowania plików PDF?

IronPDF jest kompatybilny z różnymi platformami, w tym Windows, macOS, Android i iOS, co sprawia, że jest wszechstronny w różnych środowiskach programistycznych.

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

Zespół wsparcia Iron

Jesteśmy online 24 godziny, 5 dni w tygodniu.
Czat
E-mail
Zadzwoń do mnie