Jak ustawić rozmiar papieru do drukowania w języku C

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

Klasa IronPrint's PrintSettings zapewnia programistom bezposrednia kontrole nad rozmiarem papieru za pomoca wlasciwosci PaperSize. Przypisujemy wartosc z enumeracji PaperSize — takiej jak PaperSize.A4 lub PaperSize.Letter — i przekazujemy skonfigurowany obiekt PrintSettings do dowolnej z metod drukowania IronPrint's. Drukarka wykorzystuje następnie dokładnie ten rozmiar papieru do wykonania zadania.

W niniejszym przewodniku omówiono ustawianie standardowych rozmiarów papieru, łączenie rozmiaru z innymi ustawieniami drukowania oraz drukowanie asynchroniczne — wszystko to z wykorzystaniem działającego kodu w języku C#.

Szybki start: Ustaw rozmiar papieru

  1. Zainstaluj IronPrint za pomoca NuGet: Install-Package IronPrint
  2. Dodaj using IronPrint; do pliku
  3. Utworz obiekt PrintSettings
  4. Ustaw PaperSize na dowolna wartosc z enumeracji PaperSize (np. PaperSize.A4)
  5. Przekaz ustawienia do Printer.Print() lub Printer.PrintAsync()
  1. Install IronPrint with NuGet Package Manager

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

    using IronPrint;
    
    // Print a PDF on A4 paper
    Printer.Print("report.pdf", new PrintSettings
    {
        PaperSize = PaperSize.A4
    });
  3. Wdrożenie do testowania w środowisku produkcyjnym

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

    arrow pointer

Jak ustawić rozmiar papieru podczas drukowania w języku C#?

Ustawiamy rozmiar papieru poprzez przypisanie wartosci z enumeracji PaperSize do wlasciwosci PaperSize w obiekcie PrintSettings. Następnie przekazujemy ten obiekt do dowolnej metody drukowania IronPrint.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-set-paper-size.cs
using IronPrint;

// Configure print settings with US Letter paper
PrintSettings settings = new PrintSettings();
settings.PaperSize = PaperSize.Letter;

// Print to the default printer
Printer.Print("invoice.pdf", settings);
Imports IronPrint

' Configure print settings with US Letter paper
Dim settings As New PrintSettings()
settings.PaperSize = PaperSize.Letter

' Print to the default printer
Printer.Print("invoice.pdf", settings)
$vbLabelText   $csharpLabel

Najpierw tworzymy PrintSettings, co inicjalizuje sie z domyslnymi ustawieniami drukarki. Nastepnie nadpisujemy PaperSize za pomoca PaperSize.Letter, co odpowiada standardowemu formatowi 8.5 × 11 cali. Gdy wywolamy Printer.Print, IronPrint wysyla dokument do domyslnej drukarki systemowej uzywajac tego rozmiaru papieru.

Jesli nie zostanie okreslony PaperSize, IronPrint uzywa PaperSize.PrinterDefault, co odwoluje sie do dowolnego rozmiaru papieru skonfigurowanego przez domyslna drukarke systemu operacyjnego. Jest to istotny szczegół w środowiskach produkcyjnych, gdzie konfiguracje drukarek różnią się w zależności od urządzenia.

Jakie rozmiary papieru obsługuje biblioteka?

Enumeracja PaperSize zawiera dwanascie wartosci obejmujacych miedzynarodowe standardy ISO, typowe rozmiary USA i domyslna drukarke. W poniższej tabeli wymieniono wszystkie dostępne opcje.

Wartość wyliczeniowa Standardowy Wymiary (mm) Wymiary (w całach)
PaperSize.A0 ISO A0 841 × 1189 33,1 × 46,8
PaperSize.A1 ISO A1 594 × 841 23,4 × 33,1
PaperSize.A2 ISO A2 420 × 594 16,5 × 23,4
PaperSize.A3 ISO A3 297 × 420 11,7 × 16,5
PaperSize.A4 ISO A4 210 × 297 8,3 × 11,7
PaperSize.A5 ISO A5 148 × 210 5,8 × 8,3
PaperSize.B4 ISO B4 250 × 353 9,8 × 13,9
PaperSize.B5 ISO B5 176 × 250 6,9 × 9,8
PaperSize.Letter US Letter 216 × 279 8,5 × 11,0
PaperSize.Legal Prawo amerykańskie 216 × 356 8,5 × 14,0
PaperSize.Executive Kierownictwo w USA 184 × 267 7,25 × 10,5
PaperSize.PrinterDefault Domyślna drukarka Różne Różne

Każda wartość odpowiada bezpośrednio znanemu standardowi papieru. Opcja PrinterDefault informuje IronPrint, aby uzywac rozmiaru, na jaki obecnie jest skonfigurowana drukarka — przydatne, gdy chcesz uszanowac preferencje drukarki uzytkownika a nie narzucac okreslony format.

Pełny opis API znajduje się w dokumentacji klasy PaperSize.

Jak połączyć rozmiar papieru z innymi ustawieniami drukowania?

Klasa PrintSettings udostepnia kilka wlasciwosci poza PaperSize. Możemy skonfigurować orientację, rozdzielczość, marginesy, liczbę kopii i tryb skali szarości — wszystko w jednym obiekcie.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-combined-settings.cs
using IronPrint;

// Configure full print settings
PrintSettings settings = new PrintSettings
{
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    Dpi = 300,
    NumberOfCopies = 3,
    PaperMargins = new Margins(15, 15, 15, 15),
    Grayscale = false
};

// Print the quarterly report
Printer.Print("quarterly-report.pdf", settings);
Imports IronPrint

' Configure full print settings
Dim settings As New PrintSettings With {
    .PaperSize = PaperSize.A4,
    .PaperOrientation = PaperOrientation.Landscape,
    .Dpi = 300,
    .NumberOfCopies = 3,
    .PaperMargins = New Margins(15, 15, 15, 15),
    .Grayscale = False
}

' Print the quarterly report
Printer.Print("quarterly-report.pdf", settings)
$vbLabelText   $csharpLabel

Dla przejrzystości używamy tutaj składni inicjalizatora obiektów. Orientation obraca arkusz A4 do jego szerszej osi. DPI przy 300 zapewnia ostra jakosc wykresow i drobnego tekstu. Margins akceptuje cztery wartosci w milimetrach — gorny, prawy, dolny, lewy — przez konstruktor Margins. Wlasciwosc CopyCount domyslnie ustawia sie na 1, ale ustawiamy ja jawnie dla lepszej czytelnosci.

Właściwości te współdziałają ze sobą bez sprzeczności. IronPrint weryfikuje konfigurację i przekazuje połączone ustawienia do sterownika drukarki jako pojedyncze zadanie drukowania. Aby uzyskać informacje na temat bardziej zaawansowanych ustawień, takich jak wybór drukarki i konfiguracja podajnika, zapoznaj się z pełnym przewodnikiem po ustawieniach drukowania.

Jak drukować asynchronicznie przy użyciu niestandardowego rozmiaru papieru?

Dla aplikacji, w ktorych blokowanie glownego watku jest niedopuszczalne — takich jak aplikacje WPF lub WinForms — uzywamy Printer.PrintAsync. Metoda przyjmuje ten sam obiekt PrintSettings i zwraca Task.

:path=/static-assets/print/content-code-examples/how-to/set-paper-size/set-paper-size-async-print.cs
using IronPrint;
using System.Threading.Tasks;

public class DocumentPrinter
{
    public async Task PrintLegalDocumentAsync(string filePath)
    {
        // Configure Legal paper size
        PrintSettings settings = new PrintSettings
        {
            PaperSize = PaperSize.Legal,
            PaperOrientation = PaperOrientation.Portrait,
            Dpi = 300
        };

        // Print asynchronously
        await Printer.PrintAsync(filePath, settings);
    }
}
Imports IronPrint
Imports System.Threading.Tasks

Public Class DocumentPrinter
    Public Async Function PrintLegalDocumentAsync(filePath As String) As Task
        ' Configure Legal paper size
        Dim settings As New PrintSettings With {
            .PaperSize = PaperSize.Legal,
            .PaperOrientation = PaperOrientation.Portrait,
            .Dpi = 300
        }

        ' Print asynchronously
        Await Printer.PrintAsync(filePath, settings)
    End Function
End Class
$vbLabelText   $csharpLabel

Ten przyklad oparty na klasach pokazuje realistyczny wzorzec, w ktorym serwis DocumentPrinter obejmuje logike drukowania. Konfigurujemy PaperSize.Legal (8.5 × 14 cali), co jest standardowym formatem dla kontraktow i wnioskow prawnych. Slowo kluczowe await zapewnia, ze watek wywolujacy pozostaje responsywny podczas przetwarzania zadania drukowania przez IronPrint.

Mozemy wywolac te metode z obslugi klikniecia przycisku, uslugi w tle lub wszedzie tam, gdzie await jest obslugiwane. Asynchroniczne metody IronPrint's — w tym PrintAsync i ShowPrintDialogAsync — przyjmuja te sama konfiguracje PrintSettings, wiec zachowanie rozmiaru papieru jest identyczne pomiedzy sciezkami synchronicznymi i asynchronicznymi.

Jakie są moje kolejne kroki?

Omowilismy, jak ustawic rozmiar papieru w C# korzystajac z enumeracji PaperSize IronPrint's, od podstawowej konfiguracji jednoscienkowej po zlozone ustawienia i drukowanie asynchroniczne. Klasa PrintSettings zapewnia czyste, dobrze typowane API, ktore eliminuje zgadywanie w kwestiach wymiarow papieru.

Aby dalej poznawać możliwości IronPrint:

Rozpocznij bezpłatny 30-dniowy okres próbny, aby przetestować konfigurację rozmiaru papieru we własnych projektach, lub zapoznaj się z opcjami licencyjnymi dotyczącymi wdrożenia produkcyjnego.

PaperOrientation.Landscape

Dpi

PaperMargins

Margins

Grayscale

false

Często Zadawane Pytania

Czym jest IronPrint i jak pomaga w ustawianiu rozmiaru papieru do drukowania w C#?

IronPrint to biblioteka, która upraszcza zadania drukowania w C#. Umożliwia programistom łatwe konfigurowanie rozmiarów papieru, takich jak A4, Letter i Legal, korzystając z prostych przykładów kodu.

Czy mogę ustawić niestandardowe rozmiary papieru, używając IronPrint w C#?

Tak, IronPrint umożliwia ustawienie niestandardowych rozmiarów papieru do drukowania w C#. Można zdefiniować wymiary, które spełniają określone wymagania drukowania.

Jak zmienić rozmiar papieru na A4, korzystając z IronPrint?

Aby zmienić rozmiar papieru na A4, używając IronPrint, należy skonfigurować ustawienia rozmiaru papieru w kodzie. IronPrint zapewnia prostą metodę ustawiania rozmiaru papieru na A4 przy minimalnym wysiłku programistycznym.

Czy IronPrint obsługuje konfigurację rozmiaru papieru Legal?

Tak, IronPrint obsługuje konfigurację rozmiaru papieru Legal w C#. Można łatwo ustawić rozmiar papieru na Legal, dostosowując ustawienia rozmiaru papieru w kodzie ustawień wydruku.

Czy można przełączać się między różnymi rozmiarami papieru, używając IronPrint?

Oczywiście, IronPrint pozwala na przełączanie się między różnymi rozmiarami papieru, jak A4, Letter i Legal, poprzez modyfikację ustawień rozmiaru papieru w aplikacji C#.

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 44,435 | Wersja: 2026.7 właśnie wydany
Still Scrolling Icon

Wciąż przewijasz?

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