C#에서 PDF 인쇄를 위한 용지 크기 설정 방법

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

IronPrint의 PrintSettings 클래스는 개발자에게 PaperSize 속성을 통해 종이 크기에 대한 직접적인 제어권을 제공합니다. PaperSize 열거형에서 PaperSize.A4 또는 PaperSize.Letter과 같은 값을 할당하고 구성된 PrintSettings 객체를 IronPrint의 인쇄 메서드에 전달합니다. 프린터는 이후 해당 작업을 위해 정확한 용지 크기를 사용합니다.

이 가이드는 표준 용지 크기 설정, 크기를 다른 인쇄 설정과 결합, 비동기로 인쇄 — 이 모든 것을 작동하는 C# 코드로 수행하는 방법을 다룹니다.

빠른 시작: 용지 크기 설정

  1. IronPrint를 NuGet을 통해 설치: Install-Package IronPrint
  2. 파일에 using IronPrint; 추가
  3. PrintSettings 객체 생성
  4. PaperSize을(를) PaperSize 열거형의 임의 값으로 설정 (예: PaperSize.A4)
  5. 설정을 Printer.Print() 또는 Printer.PrintAsync()에 전달
  1. NuGet 패키지 관리자를 사용하여 https://www.nuget.org/packages/IronPrint 설치하기

    PM > Install-Package IronPrint
  2. 다음 코드 조각을 복사하여 실행하세요.

    using IronPrint;
    
    // Print a PDF on A4 paper
    Printer.Print("report.pdf", new PrintSettings
    {
        PaperSize = PaperSize.A4
    });
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    무료 체험판으로 오늘 프로젝트에서 IronPrint 사용 시작하기

    arrow pointer

C#에서 인쇄할 때 용지 크기 설정 방법은?

PaperSize 열거형의 값을 PrintSettings 객체의 PaperSize 속성에 할당하여 용지 크기를 설정합니다. 그런 다음 해당 객체를 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;

// Send the document 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

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

먼저 PrintSettings을(를) 인스턴스화하여 프린터의 기본값과 함께 초기화합니다. 그런 다음 표준 8.5 × 11 인치 형식에 매핑된 PaperSize.Letter으로 PaperSize을(를) 재정의합니다. 우리가 Printer.Print을(를) 호출하면, IronPrint는 그 용지 크기를 사용하여 문서를 시스템의 기본 프린터에 보냅니다.

어떤 PaperSize도 지정되지 않은 경우, IronPrint는 운영 체제의 기본 프린터에서 사용되도록 구성된 용지 크기를 사용합니다. 이는 관련 장비에 따라 프린터 구성이 다른 생산 환경에서 중요한 세부 사항입니다.

라이브러리가 지원하는 용지 크기는 무엇인가요?

PaperSize 열거형에는 ISO 국제 표준, 일반적인 미국 크기, 그리고 프린터 기본값을 포함하여 12개의 값이 포함되어 있습니다. 아래 표는 사용 가능한 모든 옵션을 나열합니다.

열거형 값 기준 치수 (mm) 치수 (in)
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 US Legal 216 × 356 8.5 × 14.0
PaperSize.Executive US Executive 184 × 267 7.25 × 10.5
PaperSize.PrinterDefault 프린터 기본값 다양한 다양한

각 값은 잘 알려진 종이 표준에 직접 매핑됩니다. PrinterDefault 옵션은 IronPrint에게 프린터가 현재 구성된 크기를 사용하도록 지시하며, 이는 특정 형식을 강제하기 보다는 최종 사용자 프린터 환경 설정을 존중하고자 할 때 유용합니다.

전체 API 참조는 PaperSize 클래스 문서를 참조하십시오.

다른 인쇄 설정과 용지 크기를 결합하는 방법은?

PrintSettings 클래스는 PaperSize 외에도 여러 속성을 공개합니다. 방향, DPI, 여백, 복사본 수, 회색조 모드를 하나의 객체 내에서 구성할 수 있습니다.

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

// Build a fully configured print job
PrintSettings settings = new PrintSettings
{
    PaperSize = PaperSize.A4,
    PaperOrientation = PaperOrientation.Landscape,
    Dpi = 300,
    NumberOfCopies = 3,
    PaperMargins = new Margins(15, 15, 15, 15),
    Grayscale = false
};

// Print a multi-page report with these settings
Printer.Print("quarterly-report.pdf", settings);
Imports IronPrint

' Build a fully configured print job
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 a multi-page report with these settings
Printer.Print("quarterly-report.pdf", settings)
$vbLabelText   $csharpLabel

이곳에서는 명확성을 위해 객체 초기자 구문을 사용합니다. PaperOrientation.Landscape은 A4 용지를 넓은 축으로 회전시킵니다. 300의 Dpi은 차트와 세밀한 텍스트의 선명한 출력을 보장합니다. PaperMarginsMargins 생성자를 통해 밀리미터 단위로 위, 오른쪽, 아래, 왼쪽의 네 가지 값을 받아들입니다. Grayscale 속성은 기본적으로 false로 설정되어 있지만, 가독성을 위해 명시적으로 설정합니다.

이 속성들은 충돌 없이 함께 작동합니다. IronPrint는 구성을 검증하고 결합된 설정을 단일 인쇄 작업으로 프린터 드라이버에 전달합니다. 프린터 선택트레이 구성과 같은 고급 설정에 대해서는 전체 인쇄 설정 가이드를 참조하십시오.

사용자 정의 용지 크기로 비동기 인쇄하는 방법은?

주 스레드를 차단하는 것이 선택 사항이 아닌 애플리케이션 (예: WPF 또는 WinForms 앱)에서는 Printer.PrintAsync을 사용합니다. 해당 메서드는 동일한 PrintSettings 객체를 받아 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 for contracts and legal documents
        PrintSettings settings = new PrintSettings
        {
            PaperSize = PaperSize.Legal,
            PaperOrientation = PaperOrientation.Portrait,
            Dpi = 300
        };

        // Print without blocking the UI thread
        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 for contracts and legal documents
        Dim settings As New PrintSettings With {
            .PaperSize = PaperSize.Legal,
            .PaperOrientation = PaperOrientation.Portrait,
            .Dpi = 300
        }

        ' Print without blocking the UI thread
        Await Printer.PrintAsync(filePath, settings)
    End Function
End Class
$vbLabelText   $csharpLabel

이 클래스 기반 예제는 DocumentPrinter 서비스가 인쇄 로직을 감싸고 있는 현실적인 패턴을 보여줍니다. 우리는 계약 및 법적 문서의 표준 형식인 (8.5 × 14 인치)의 PaperSize.Legal을 구성합니다. await 키워드는 IronPrint가 인쇄 작업을 처리하는 동안 호출 스레드가 응답성을 유지하도록 합니다.

우리는 이 메서드를 버튼 클릭 핸들러, 백그라운드 서비스, 또는 async / await이 지원되는 어디에서든 호출할 수 있습니다. IronPrint의 비동기 메서드는 — PrintAsyncShowPrintDialogAsync를 포함하여 — 동일한 PrintSettings 구성을 받아들여, 동기 및 비동기 경로 사이의 용지 크기 동작이 동일합니다.

내 다음 단계는 무엇인가요?

기본 단일 속성 구성에서 결합 설정 및 비동기 인쇄에 이르기까지, C#에서 IronPrint의 PaperSize 열거형을 사용하여 용지 크기를 설정하는 방법을 다루었습니다. PrintSettings 클래스는 용지 크기에 대한 추측을 제거하는 깔끔하고 강력한 API를 제공합니다.

IronPrint의 기능을 계속 탐구하려면:

무료 30일 체험판을 시작하여 프로젝트에서 용지 크기 구성을 테스트하거나, 배포 라이선스 옵션 보기를 확인하세요.

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'name'

Filename: sections/author_component.php

Line Number: 18

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 18
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'title'

Filename: sections/author_component.php

Line Number: 38

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 38
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

A PHP Error was encountered

Severity: Warning

Message: Illegal string offset 'comment'

Filename: sections/author_component.php

Line Number: 48

Backtrace:

File: /var/www/ironpdf.com/application/views/main/sections/author_component.php
Line: 48
Function: _error_handler

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 63
Function: view

File: /var/www/ironpdf.com/application/views/products/sections/three_column_docs_page_structure.php
Line: 64
Function: main_view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/views/products/how-to/index.php
Line: 2
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 88
Function: view

File: /var/www/ironpdf.com/application/libraries/Render.php
Line: 552
Function: view

File: /var/www/ironpdf.com/application/controllers/Products/Howto.php
Line: 31
Function: render_products_view

File: /var/www/ironpdf.com/index.php
Line: 292
Function: require_once

시작할 준비 되셨나요?
Nuget 다운로드 38,930 | 버전: 2026.4 방금 출시되었습니다
Still Scrolling Icon

아직도 스크롤하고 계신가요?

빠른 증거를 원하시나요? PM > Install-Package IronPrint
샘플을 실행하세요 문서가 프린터로 전송되는 것을 지켜보세요.