IRONSOFTWAREHOME
동영상

IronPDF 사용하여 .NET Core 에서 PDF 파일을 생성하는 방법

Curtis Chau
Curtis Chau
Updated: 2026년 7월 19일

PDFPrinting.NET에서 IronPDF로의 마이그레이션을 통해 인쇄 전용 라이브러리에서 PDF의 생성, 조작, 추출, 보안 및 인쇄를 포함하는 완전한 PDF 수명 주기를 처리하는 종합 솔루션으로 PDF 기능이 확장됩니다. 이 가이드는 PDF 생성, HTML 변환 및 크로스 플랫폼 지원 기능을 추가하면서 기존의 인쇄 워크플로를 보존하는 완전한 단계별 마이그레이션 경로를 제공합니다.

PDFPrinting.NET에서 IronPDF로 마이그레이션해야 하는 이유

PDFPrinting.NET 이해하기

PDFPrinting.NET (Terminalworks; NuGet PdfPrintingNet)은 Windows 환경에서 무음 PDF 인쇄에 중점을 둔 전문 라이브러리입니다. 기존 PDF의 무음 인쇄에 중점을 둔 전용 도구로, 사용자 개입 없이 프로그래밍 방식으로 문서를 프린터로 발송하는 작업을 간소화합니다. 새로운 진입점은 PdfPrint 클래스입니다; 이전 코드는 여전히 오래된 TerminalWorks.PDFPrinting.PDFPrinter를 참조할 수 있습니다.

핵심 강점은 무음 인쇄입니다 — 일반적인 인쇄 대화 상자를 우회하여 완전히 자동화된 워크플로우가 간섭 없이 실행될 수 있도록 합니다.

인쇄 중심의 제한

PDFPrinting.NET은 제한된 작업 세트에 집중하며 새 PDF 콘텐츠를 작성하지 않습니다. 그 범위는 기존 문서를 인쇄, 보기, 기본 편집 및 래스터화하는 것입니다:

  1. 인쇄 중심: 새 PDF 콘텐츠를 작성하지 않습니다 — 미리 존재하는 PDF만 인쇄, 보기, 편집 및 래스터화합니다.

  2. Windows 전용 인쇄: Windows 인쇄 인프라에 묶여 있어 플랫폼 간 사용성이 제한됩니다.

  3. HTML/URL-to-PDF API 없음: HtmlToPdfConverterWebPageToPdfConverter 클래스가 없습니다 — 이러한 기능은 API 표면에 존재하지 않습니다.

  4. 제한된 조작: 기본 병합/분할/추출은 PdfPrintDocument을 통해 가능합니다; 워터마킹이나 현대적 콘텐츠 저작은 없습니다.

  5. 종합적인 텍스트 추출 표면 없음.

  6. 양식 채우기 또는 평면화 없음.

PDFPrinting.NET 대IronPDF비교

기능PDFPrinting.NETIronPDF
주요 기능조용한 PDF 인쇄전체 사이클 처리 (생성, 편집, 인쇄)
플랫폼 지원Windows 전용크로스 플랫폼
PDF 생성/조작 기능아니요
HTML을 PDF로 변환아니요
자동화된 워크플로우에 적합높음높음
추가 종속성Windows 프린터에 의존내장 브라우저 엔진을 사용하여 렌더링
조용한 인쇄
텍스트 추출지원되지 않음지원됨
라이선스상업적상업적

IronPDF는 PDF 처리의 전체 수명 주기를 다룰 수 있는 더 포괄적인 솔루션을 제공합니다. PDF 문서를 생성, 편집, 변환 및 인쇄할 수 있어 개발자에게 단일 API를 통한 전체 기능 패키지를 제공합니다. PDFPrinting.NET과 달리 IronPDF는 다양한 플랫폼에 배포될 수 있으며, 다양한 환경에서 작동하는 응용 프로그램에 유연한 선택이 됩니다.

현대 .NET을 사용하는 팀에게 IronPDF는 Windows, Linux, macOS 환경에서 모두 작동하는 종합적인 PDF 솔루션을 제공합니다.


시작하기 전에

필수 조건

  1. .NET 환경: .NET Framework 4.6.2+ 또는 .NET Core 3.1+ / .NET 5/6/7/8/9+
  2. NuGet 접근 권한: NuGet 패키지를 설치할 수 있는 능력
  3. IronPDF 라이선스: ironpdf.com에서 라이선스 키를 획득하세요

NuGet 패키지 변경 사항

# Remove PDFPrinting.NET (the actual NuGet ID is PdfPrintingNet)
dotnet remove package PdfPrintingNet

# Install IronPDF
dotnet add package IronPdf
SHELL

라이선스 구성

// Add at application startup (Program.cs or Startup.cs)
IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

PDFPrinting.NET 사용 식별하기

# Find PDFPrinting.NET usage (newer + legacy namespaces)
grep -rE "PdfPrintingNet|TerminalWorks\.PDFPrinting|PdfPrint\b|PdfPrintDocument|PDFPrinter" --include="*.cs" .

# Find print-related code
grep -r "\.Print(\|PrinterName\|GetPrintDocument" --include="*.cs" .
SHELL

완전한 API 참조

네임스페이스 변경

// Before: PDFPrinting.NET
// Newer API:
using PdfPrintingNet;
// Older code may use:
using TerminalWorks.PDFPrinting;

// After: IronPDF
using IronPdf;
using IronPdf.Rendering;
using IronPdf.Printing;

핵심 클래스 매핑

PDFPrinting.NETIronPDF
PdfPrint (새로운) / PDFPrinter (오래된)PdfDocument + Print()
PdfPrintDocumentPdfDocument
(HTML-to-PDF 클래스 없음)ChromePdfRenderer.RenderHtmlAsPdf
(URL-to-PDF 클래스 없음)ChromePdfRenderer.RenderUrlAsPdf
인쇄 설정 속성PrintSettings

인쇄 방법 맵핑

PDFPrinting.NETIronPDF
pdfPrint.Print(filePath)pdf.Print()
pdfPrint.PrinterName = "..."; pdfPrint.Print(path)pdf.Print(printerName)
new PdfPrintDocument(...)pdf.GetPrintDocument()
pdfPrint.Copies = nprintSettings.NumberOfCopies = n
pdfPrint.Duplex = trueprintSettings.DuplexMode = Duplex.Vertical
pdfPrint.Collate = trueprintSettings.Collate = true

PDFPrinting.NET에 없는 새로운 기능

IronPDF기능설명
renderer.RenderHtmlAsPdf(html)HTML을 PDF로 변환
renderer.RenderUrlAsPdf(url)URL을 PDF로 변환
PdfDocument.Merge(pdfs)여러 PDF 병합
pdf.ApplyWatermark(html)워터마크 추가
pdf.SecuritySettings.UserPassword암호 보호
pdf.ExtractAllText()텍스트 추출

코드 마이그레이션 예제

예제 1: HTML에서 PDF로 변환

이전 (PDFPrinting.NET): PDFPrinting.NET에는 HTML-to-PDF API가 없습니다 — HtmlToPdfConverter 클래스가 없습니다. 가장 가까운 워크플로우는 다른 라이브러리로 PDF를 생성한 다음 파일을 인쇄하거나 전달하는 것입니다:

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Step 1: Produce the PDF with another library (PDFPrinting.NET cannot).
        // Step 2: Print the existing PDF file.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        var status = pdfPrint.Print("output.pdf");
        Console.WriteLine($"Printed: {status}");
    }
}

이후 (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        string html = "<html><body><h1>Hello World</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("output.pdf");
        Console.WriteLine("PDF created successfully");
    }
}

PDFPrinting.NET은 PDF를 전혀 작성할 수 없기 때문에, 마이그레이션은 클래스 교환이 아니라 새로운 기능을 채택하는 것입니다. IronPDF의 ChromePdfRenderer.RenderHtmlAsPdf()PdfDocument를 반환하며, 이는 저장하기 전에 SaveAs()로 조작할 수 있습니다 (워터마크, 병합, 보안). Chromium 기반 엔진을 활용하여 IronPDF는 현대 CSS 및 JavaScript 렌더링을 높은 충실도로 재현합니다. HTML에서 PDF로의 문서에서 포괄적인 예제를 참조하세요.

예제 2: URL에서 PDF로 변환

이전 (PDFPrinting.NET): WebPageToPdfConverter 클래스가 없습니다 — PDFPrinting.NET은 웹 페이지를 다운로드하거나 렌더링하지 않습니다. 별도의 라이브러리가 URL을 먼저 PDF로 캡처해야 하며, PDFPrinting.NET은 그 결과 파일을 인쇄할 수 있습니다:

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Step 1: Capture the URL with another library (PDFPrinting.NET cannot).
        // Step 2: Print the resulting PDF.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        var status = pdfPrint.Print("webpage.pdf");
        Console.WriteLine($"Printed: {status}");
    }
}

이후 (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        string url = "https://www.example.com";
        var pdf = renderer.RenderUrlAsPdf(url);
        pdf.SaveAs("webpage.pdf");
        Console.WriteLine("PDF from URL created successfully");
    }
}

IronPDF는 HTML 문자열과 URL 모두에 대해 단일 ChromePdfRenderer 클래스를 사용하며, RenderUrlAsPdf()는 단일 호출에서 웹 캡처를 처리합니다. 더 많은 정보를 보려면 튜토리얼을 참조하세요.

예제 3: 헤더 및 푸터

이전 (PDFPrinting.NET): PDFPrinting.NET은 헤더 또는 풋터를 저작할 수 없습니다 — HTML이나 다른 소스에서 PDF를 생성하지 않으며, 헤더/풋터 구성 API도 제공하지 않습니다. PDF가 이미 그것들을 포함하고 있다면 라이브러리는 인쇄할 수 있습니다:

// NuGet: Install-Package PdfPrintingNet
using PdfPrintingNet;
using System;

class Program
{
    static void Main()
    {
        // Headers/footers must already be baked into the PDF.
        var pdfPrint = new PdfPrint("license-owner", "license-key");
        pdfPrint.Print("report.pdf");
        Console.WriteLine("PDF with pre-existing headers/footers printed");
    }
}

이후 (IronPDF):

// NuGet: Install-Package IronPdf
using IronPdf;
using IronPdf.Rendering;
using System;

class Program
{
    static void Main()
    {
        IronPdf.License.LicenseKey = "YOUR-LICENSE-KEY";

        var renderer = new ChromePdfRenderer();
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Company Report</div>"
        };
        renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
        {
            HtmlFragment = "<div style='text-align:center'>Page {page} of {total-pages}</div>"
        };
        string html = "<html><body><h1>Document Content</h1></body></html>";
        var pdf = renderer.RenderHtmlAsPdf(html);
        pdf.SaveAs("report.pdf");
        Console.WriteLine("PDF with headers/footers created");
    }
}

IronPDF는 전체 HTML을 수용하는 HtmlFragment 속성을 가진 HtmlHeaderFooter 객체를 사용하여 CSS로 풍부한 스타일을 적용할 수 있습니다. {page}{total-pages}과 같은 플레이스홀더는 렌더링 시점에 대체됩니다.


중요한 마이그레이션 노트

헤더/풋터 플레이스홀더는IronPDF전용 기능입니다

PDFPrinting.NET에는 전혀 헤더 또는 풋터 저작 API가 없으므로 마이그레이션할 플레이스홀더 구문이 없습니다. IronPDF는 HtmlHeaderFooter.HtmlFragment 내에서 {page}{total-pages} 플레이스홀더를 지원합니다:

//IronPDF placeholders
"Page {page} of {total-pages}"
C#

로드-후-출력 패턴

PDFPrinting.NET은 파일 경로를 Print()에 직접 전달합니다; IronPDF는 먼저 문서를 로드합니다:

// PDFPrinting.NET: Direct path to Print()
pdfPrint.Print("document.pdf");

// IronPDF: Load first, then operate
var pdf = PdfDocument.FromFile("document.pdf");
pdf.Print();

출력 설정 마이그레이션

PDFPrinting.NET은 PdfPrint에 대한 프로퍼티를 사용합니다; IronPDF는 설정 객체를 사용합니다:

// PDFPrinting.NET: Properties on PdfPrint
pdfPrint.Copies = 2;
pdfPrint.Duplex = true;

// IronPDF: Settings object
var settings = new PrintSettings
{
    NumberOfCopies = 2,
    DuplexMode = System.Drawing.Printing.Duplex.Vertical
};
pdf.Print(settings);

이동 후 새로운 기능

IronPDF로 마이그레이션하면 PDFPrinting.NET이 제공할 수 없는 기능을 얻게 됩니다:

PDF 병합

var pdf1 = PdfDocument.FromFile("document1.pdf");
var pdf2 = PdfDocument.FromFile("document2.pdf");
var merged = PdfDocument.Merge(pdf1, pdf2);
merged.SaveAs("merged.pdf");

워터마크

pdf.ApplyWatermark("<h2 style='color:red;'>CONFIDENTIAL</h2>");

비밀번호 보호

pdf.SecuritySettings.UserPassword = "userpassword";
pdf.SecuritySettings.OwnerPassword = "ownerpassword";

텍스트 추출

string text = pdf.ExtractAllText();

생성-후-출력 워크플로우

IronPDF를 사용하면 PDF를 생성하고 하나의 워크플로우 내에서 출력할 수 있습니다:

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Invoice</h1>");
pdf.Print("Invoice Printer");

크로스 플랫폼 출력

PDFPrinting.NET은 Windows 전용입니다. IronPDF는 크로스 플랫폼에서 작동합니다:

윈도우

pdf.Print("HP LaserJet");

리눅스

// Requires CUPS (Common Unix Printing System)
// Install: apt-get install cups
pdf.Print("HP_LaserJet");  // CUPS uses underscores instead of spaces

macOS

pdf.Print("HP LaserJet");

기능 비교 요약

기능PDFPrinting.NETIronPDF
무음 인쇄
출력 설정
HTML to PDF
URL을 PDF로 변환
헤더/푸터기초적인전체 HTML
PDF 병합
PDF 분할
워터마크
텍스트 추출
비밀번호 보호
크로스 플랫폼

마이그레이션 체크리스트

사전 마이그레이션

  • 코드베이스에서 모든 PDFPrinting.NET 사용 목록 작성
  • 현재 사용 중인 모든 프린터 이름 문서화
  • 모든 출력 설정 구성 주석
  • 크로스 플랫폼 지원이 필요한지 식별 -IronPDF라이선스 키 저장 계획 (환경 변수 권장) -IronPDF체험판 라이선스로 먼저 테스트

패키지 변경 사항

  • PdfPrintingNet NuGet 패키지 제거
  • IronPdf NuGet Install-Package: dotnet add package IronPdf

코드 변경 사항

  • 네임스페이스 임포트 업데이트 (PdfPrintingNet / legacy TerminalWorks.PDFPrintingIronPdf)
  • pdfPrint.Print(path)호출을 PdfDocument.FromFile(path).Print()` 패턴으로 변환
  • 프린트마다 속성 (Copies, Duplex, Collate, PrinterName)을 PrintSettings 객체로 이동
  • 새로운 기능 채택: HTML 및 URL 입력에 대해 ChromePdfRenderer.RenderHtmlAsPdf / RenderUrlAsPdf 사용 (PDFPrinting.NET에서는 이와 동등한 것이 존재하지 않았음)
  • 머리글/바닥글을 RenderingOptions.HtmlHeaderHtmlFooter로 구성 (새로운 기능)
  • 애플리케이션 시작 시 IronPdf.License.LicenseKey 설정

마이그레이션 이후

  • 모든 대상 플랫폼에서 출력 테스트
  • 헤더/푸터 렌더링 검증
  • 동적 문서용 PDF 생성 추가 고려
  • 필요에 따라 새로운 기능 추가 (병합, 워터마크, 보안)

참고해 주세요: PDFPrinting.NET은 해당 소유자의 등록 상표입니다. 이 사이트는 TerminalWorks와 관련이 없으며, 지지 또는 후원을 받지 않습니다. 모든 제품명, 로고 및 브랜드는 해당 소유자의 자산입니다. 비교는 정보 제공 목적으로만 사용되며, 작성 시점에 공개적으로 이용 가능한 정보를 반영합니다.
Curtis Chau
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

...
더 읽어보기

관련 기사

Key in blue circle

무료 30일 체험 키를 즉시 받으세요.

Your trial license will be sent to your email address

제한 없음. 100% 무제한 이용. 신용카드 불필요.

bullet_checked신용카드나 계정 생성은 필요하지 않습니다.제한 없음. 100% 무제한 이용. 신용카드 불필요.
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
무료 라이브 데모를 예약하세요
Booking Badge

전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.

Iron Software의 고객 로고
부담 없는 무료 상담을 받아보세요
아래 양식을 작성하시거나 sales@ironsoftware.com으로 이메일을 보내주세요.
고객님의 정보는 항상 비밀로 유지됩니다.
전 세계 수백만 엔지니어들이 신뢰하는 제품입니다.
Iron Software의 고객 로고
지금 바로 30일 무료 체험판 키를 받으세요.
신용카드나 계정 생성은 필요하지 않습니다.