푸터 콘텐츠로 바로가기
IRONPDF 사용하기

C# PDFWriter 튜토리얼 for .NET 10 개발자용

IronPDF는 HTML을 PDF로 변환하여 C#에서 PDF를 생성하는 프로세스를 간소화합니다. 개발자는 최소한의 코드로 전문적인 PDF를 생성할 수 있으며, 수동 위치 지정이나 과도한 보일러플레이트를 피할 수 있습니다.

C#에서 프로그램적으로 PDF 문서를 생성하는 것은 확실히 어렵습니다. 대부분의 C# PDFWriter 솔루션은 단순한 PDF 파일을 생성하기 위해 복잡한 API와 광범위한 보일러플레이트 코드가 필요합니다. 이전의 오픈 소스 라이브러리를 시도해봤다면, 암호 같은 위치 지정 방법, 메모리 관리의 문제점, 제한된 CSS 지원에 대해 얼마나 좌절을 겪었는지 알 것입니다.

IronPDF는 이러한 문제를 해결합니다. 몇 줄의 코드만으로 PDF 문서를 생성하고, 새로운 페이지, 단락, 이미지, 헤더, 및 페이지 번호를 추가하고, 저수준의 세부사항을 처리하지 않고 저장할 수 있습니다. 이 라이브러리는 Chromium 렌더링 엔진 위에 구축되어 있기 때문에 이미 알고 있는 HTML과 CSS가 픽셀 단위로 정확한 PDF 출력으로 직접 전환됩니다.

이 튜토리얼에서는 IronPDF의 ChromePdfRenderer, 중앙 렌더링 클래스 및 PDF 생성 방법을 사용하여 .NET 10에서 전문적인 PDF 문서를 작성하는 방법을 배웁니다. 마지막에는 간단한 "Hello World" 테스트부터 사용자 지정 글꼴과 이미지가 포함된 본격적인 인보이스까지 자신만의 PDF 파일을 생성할 수 있게 됩니다.

C#의 PDFWriter란 무엇인가요?

PDFWriter는 개발자가 PDF 문서를 생성하고, 단락, 이미지, 헤더를 추가하고, 페이지를 프로그램적으로 조작할 수 있도록 해주는 문서 개체나 라이브러리입니다. 전통적인 라이브러리는 종종 수동 위치 설정, 복잡한 계산 및 명시적인 리소스 관리를 요구합니다. 이들은 또한 국제 언어나 복잡한 유니코드 문자를 다루는 데 어려움을 겪을 수 있습니다.

IronPDF는 이러한 모든 것을 간소화합니다. 익숙한 C# 환경에서의 간단한 코드를 사용하여 HTML 콘텐츠 및 CSS로부터 PDF 문서를 생성할 수 있습니다. 이에는 콘솔 애플리케이션, ASP.NET Core 웹 API 또는 백그라운드 서비스가 포함됩니다. 이 라이브러리는 글꼴 커닝과 메타데이터 관리를 자동으로 처리합니다.

ITextSharp와 같은 일부 라이브러리에는 PdfWriter라는 클래스가 있지만 C#에서 PDFWriter라는 용어는 일반적으로 프로그래밍 방식으로 PDF 문서를 생성하는 모든 구성 요소 또는 라이브러리를 지칭합니다. IronPDF는 완전히 다른 접근 방식을 취합니다. 저수준 API를 통해 문서 요소를 하나씩 구축하는 대신, HTML과 CSS를 작성한 후 렌더링합니다. 이 접근 방식은 브라우저에서 레이아웃을 프로토타입하고 PDF로 변환할 때, 마크업의 한 줄도 변경하지 않아도 됨을 의미합니다.

저수준 조작에서 고수준 생성으로 전환하면 생산성이 크게 향상됩니다. ChromePdfRenderer 인스턴스를 사용하면 최소한의 코드로 PDF를 만들 수 있습니다. Chrome 렌더링 엔진은 최신 CSS 미디어 타입과 반응형 레이아웃을 지원하며, 언제나 픽셀 단위로 정확한 출력을 보장합니다.

아래에서 볼 수 있듯이, iTextSharp 같은 전통적인 PDFWriter 라이브러리는 많은 보일러플레이트가 필요하지만, IronPDF는 같은 PDF 문서를 몇 줄의 코드만으로 생성합니다. 더 빠르고, 더 간단하며, 에러가 덜 발생합니다.

C# 프로젝트에 IronPDF를 어떻게 설치하나요?

IronPDF를 시작하는 데에는 1분도 걸리지 않습니다. NuGet.org에서 패키지를 사용할 수 있습니다. .NET CLI 또는 NuGet 패키지 관리자 콘솔에서 설치하세요:

dotnet add package IronPdf
dotnet add package IronPdf
SHELL

또는 Visual Studio 내의 NuGet 패키지 관리자 콘솔을 선호하는 경우:

Install-Package IronPdf
Install-Package IronPdf
SHELL

또는 Visual Studio에서:

  1. 솔루션 탐색기에서 프로젝트를 오른쪽 클릭합니다.
  2. "NuGet 패키지 관리"를 선택합니다.
  3. "IronPdf"를 검색하세요
  4. 설치를 클릭합니다.

플랫폼별 설치에 대한 자세한 내용은 IronPDF 설치 가이드NuGet 패키지 설정 안내를 참조하세요. Azure, AWS Lambda, 또는 Docker 컨테이너에 배포하는 경우, Iron Software는 각 플랫폼에 대해 특정 환경 가이드를 유지합니다. Linux 배포는 추가적인 네이티브 종속성을 요구할 수 있으며, 문서에서 이러한 단계를 명확히 설명합니다.

설치가 완료되면 파일 상단에 using IronPdf;를 추가하면 PDF 생성을 시작할 준비가 완료됩니다.

IronPDF로 첫 PDF를 어떻게 만드나요?

전통적인 PDFWriter 구현과는 달리, IronPDF는 별도의 PDFWriter 클래스 변수를 필요로 하지 않습니다. ChromePdfRendererPdfDocument 객체는 내부적으로 모든 작성 작업을 처리합니다. .NET 10의 최상위 문장을 사용하는 전체 작동 예제입니다:

using IronPdf;

// Instantiate the PDF renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>");

// Save the PDF to disk
pdf.SaveAs("output.pdf");
using IronPdf;

// Instantiate the PDF renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from an HTML string
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>");

// Save the PDF to disk
pdf.SaveAs("output.pdf");
Imports IronPdf

' Instantiate the PDF renderer
Dim renderer As New ChromePdfRenderer()

' Create a PDF from an HTML string
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>")

' Save the PDF to disk
pdf.SaveAs("output.pdf")
$vbLabelText   $csharpLabel

이것이 전체 프로그램입니다. 코드-2001--@@@은 내부적으로 모든 복잡성을 처리하여 HTML 구조와 스타일을 정확하게 반영하는 PDF를 생성합니다. 페이지 나누기, 좌표 시스템 또는 글리프 경로를 관리할 필요가 없습니다. 엔진이 이를 대신 처리합니다.

파일 대신 스트림으로 작업해야 하는 경우 PDF를 MemoryStream로 내보낼 수 있습니다:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>");

// Work with the PDF as a byte array
byte[] pdfBytes = pdf.BinaryData;

// Or use the built-in stream
using var ms = pdf.Stream;
// Pass ms to an HttpResponse, Azure Blob Storage, or another destination
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>");

// Work with the PDF as a byte array
byte[] pdfBytes = pdf.BinaryData;

// Or use the built-in stream
using var ms = pdf.Stream;
// Pass ms to an HttpResponse, Azure Blob Storage, or another destination
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1><p>This is my first PDF!</p>")

' Work with the PDF as a byte array
Dim pdfBytes As Byte() = pdf.BinaryData

' Or use the built-in stream
Using ms = pdf.Stream
    ' Pass ms to an HttpResponse, Azure Blob Storage, or another destination
End Using
$vbLabelText   $csharpLabel

특정 사용 사례를 위해 특수 형식으로 PDF를 저장할 수도 있습니다:

using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Archived Report</h1><p>Long-term storage version.</p>");

// Save as PDF/A-3b for long-term archival
pdf.SaveAsPdfA("archived-document.pdf", PdfAVersions.PdfA3b);

// Save as a linearized PDF for fast web viewing
pdf.SaveAsLinearized("web-optimized.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Archived Report</h1><p>Long-term storage version.</p>");

// Save as PDF/A-3b for long-term archival
pdf.SaveAsPdfA("archived-document.pdf", PdfAVersions.PdfA3b);

// Save as a linearized PDF for fast web viewing
pdf.SaveAsLinearized("web-optimized.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Archived Report</h1><p>Long-term storage version.</p>")

' Save as PDF/A-3b for long-term archival
pdf.SaveAsPdfA("archived-document.pdf", PdfAVersions.PdfA3b)

' Save as a linearized PDF for fast web viewing
pdf.SaveAsLinearized("web-optimized.pdf")
$vbLabelText   $csharpLabel

PDF/A는 보관 품질 문서용 ISO 19005 표준이며, 선형화된 PDF는 웹 브라우저에서 페이지별 스트리밍을 통해 로딩 속도가 더 빠릅니다. 두 옵션은 메서드 호출 외에 추가 구성을 필요로 하지 않습니다.

HTML을 PDF 문서로 어떻게 변환합니까?

IronPDF의 진짜 강력함은 복잡한 PDF 문서를 생성할 때 발휘됩니다. 기존 웹 페이지의 HTML을 변환하거나 템플릿에서 동적 보고서를 생성할 때, HTML-to-PDF 변환은 완전한 CSS 충실도를 유지합니다. 이 라이브러리는 Bootstrap, Flexbox, SVG 그래픽, 그리고 JavaScript로 렌더링된 콘텐츠를 지원합니다.

using IronPdf;

var renderer = new ChromePdfRenderer();

// Convert a live URL to PDF
var urlPdf = renderer.RenderUrlAsPdf("https://example.com");
urlPdf.SaveAs("website.pdf");

// Convert a local HTML file to PDF
var filePdf = renderer.RenderHtmlFileAsPdf("invoice.html");
filePdf.SaveAs("invoice.pdf");

// Apply rendering options for precise control
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500); // wait for dynamic content
using IronPdf;

var renderer = new ChromePdfRenderer();

// Convert a live URL to PDF
var urlPdf = renderer.RenderUrlAsPdf("https://example.com");
urlPdf.SaveAs("website.pdf");

// Convert a local HTML file to PDF
var filePdf = renderer.RenderHtmlFileAsPdf("invoice.html");
filePdf.SaveAs("invoice.pdf");

// Apply rendering options for precise control
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.MarginTop = 20;
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.WaitFor.RenderDelay(500); // wait for dynamic content
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

' Convert a live URL to PDF
Dim urlPdf = renderer.RenderUrlAsPdf("https://example.com")
urlPdf.SaveAs("website.pdf")

' Convert a local HTML file to PDF
Dim filePdf = renderer.RenderHtmlFileAsPdf("invoice.html")
filePdf.SaveAs("invoice.pdf")

' Apply rendering options for precise control
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.RenderDelay(500) ' wait for dynamic content
$vbLabelText   $csharpLabel

WaitFor.RenderDelay 방법은 대상 페이지가 초기 DOM 렌더링 후 콘텐츠를 채우는 React 또는 Angular와 같은 JavaScript 프레임워크에 의존하는 경우에 유용합니다. 보통 500 ~ 1000 ms의 지연 시간을 설정하면 최종 렌더링 상태를 정확하게 포착합니다.

렌더링 옵션에 대한 자세한 내용은 IronPDF 문서를 참조하세요.

HTML 파일 출력은 어떻게 보이나요?

왼쪽에는 HTML 인보이스 템플릿 코드가 표시된 분할 화면 보기, 오른쪽에는 생성된 PDF 미리보기로 HTML에서 PDF로의 변환을 시연합니다.

IronPDF로 실세계 PDF 문서를 어떻게 생성합니까?

C#에서의 실세계 PDF 생성은 종종 동적 데이터를 포함합니다. 여기 IronPDF를 사용하는 전문 송장을 만드는 방법이 있습니다. 예제는 C# 문자열 보간법을 사용하여 HTML 템플릿을 작성하고 이를 직접 렌더링합니다:

using IronPdf;

int invoiceNumber = 12345;
decimal totalAmount = 250.75m;

string invoiceHtml = $@"
    <html>
    <head>
        <style>
            body {{ font-family: Arial, sans-serif; margin: 40px; }}
            .header {{ background: #f0f0f0; padding: 20px; border-radius: 4px; }}
            table {{ width: 100%; border-collapse: collapse; margin-top: 20px; }}
            td, th {{ padding: 8px 12px; border: 1px solid #ddd; }}
            .total {{ font-weight: bold; font-size: 18px; margin-top: 20px; }}
        </style>
    </head>
    <body>
        <div class='header'>
            <h1>Invoice #{invoiceNumber}</h1>
            <p>Date: {DateTime.Now:yyyy-MM-dd}</p>
        </div>
        <table>
            <tr><th>Product</th><th>Quantity</th><th>Price</th></tr>
            <tr><td>IronPDF License</td><td>1</td><td>$250.75</td></tr>
        </table>
        <p class='total'>Total: ${totalAmount:F2}</p>
    </body>
    </html>";

var renderer = new ChromePdfRenderer();
var invoicePdf = renderer.RenderHtmlAsPdf(invoiceHtml);

// Apply a digital signature for authenticity
invoicePdf.Sign(new PdfSignature("cert.pfx", "password"));
invoicePdf.SaveAs($"invoice-{invoiceNumber}.pdf");
using IronPdf;

int invoiceNumber = 12345;
decimal totalAmount = 250.75m;

string invoiceHtml = $@"
    <html>
    <head>
        <style>
            body {{ font-family: Arial, sans-serif; margin: 40px; }}
            .header {{ background: #f0f0f0; padding: 20px; border-radius: 4px; }}
            table {{ width: 100%; border-collapse: collapse; margin-top: 20px; }}
            td, th {{ padding: 8px 12px; border: 1px solid #ddd; }}
            .total {{ font-weight: bold; font-size: 18px; margin-top: 20px; }}
        </style>
    </head>
    <body>
        <div class='header'>
            <h1>Invoice #{invoiceNumber}</h1>
            <p>Date: {DateTime.Now:yyyy-MM-dd}</p>
        </div>
        <table>
            <tr><th>Product</th><th>Quantity</th><th>Price</th></tr>
            <tr><td>IronPDF License</td><td>1</td><td>$250.75</td></tr>
        </table>
        <p class='total'>Total: ${totalAmount:F2}</p>
    </body>
    </html>";

var renderer = new ChromePdfRenderer();
var invoicePdf = renderer.RenderHtmlAsPdf(invoiceHtml);

// Apply a digital signature for authenticity
invoicePdf.Sign(new PdfSignature("cert.pfx", "password"));
invoicePdf.SaveAs($"invoice-{invoiceNumber}.pdf");
Imports IronPdf

Dim invoiceNumber As Integer = 12345
Dim totalAmount As Decimal = 250.75D

Dim invoiceHtml As String = $"
    <html>
    <head>
        <style>
            body {{ font-family: Arial, sans-serif; margin: 40px; }}
            .header {{ background: #f0f0f0; padding: 20px; border-radius: 4px; }}
            table {{ width: 100%; border-collapse: collapse; margin-top: 20px; }}
            td, th {{ padding: 8px 12px; border: 1px solid #ddd; }}
            .total {{ font-weight: bold; font-size: 18px; margin-top: 20px; }}
        </style>
    </head>
    <body>
        <div class='header'>
            <h1>Invoice #{invoiceNumber}</h1>
            <p>Date: {DateTime.Now:yyyy-MM-dd}</p>
        </div>
        <table>
            <tr><th>Product</th><th>Quantity</th><th>Price</th></tr>
            <tr><td>IronPDF License</td><td>1</td><td>$250.75</td></tr>
        </table>
        <p class='total'>Total: ${totalAmount:F2}</p>
    </body>
    </html>"

Dim renderer As New ChromePdfRenderer()
Dim invoicePdf = renderer.RenderHtmlAsPdf(invoiceHtml)

' Apply a digital signature for authenticity
invoicePdf.Sign(New PdfSignature("cert.pfx", "password"))
invoicePdf.SaveAs($"invoice-{invoiceNumber}.pdf")
$vbLabelText   $csharpLabel

이 접근법은 HTML 템플릿의 유연성과 PDF 출력의 신뢰성을 결합합니다. 어떤 CSS 프레임워크도 사용할 수 있으며, 기본 64로 인코딩된 이미지를 임베드하고 데이터베이스 또는 API 호출로부터 데이터를 직접 템플릿 문자열에 주입할 수 있습니다. 결과는 브라우저에서 HTML 미리보기와 정확히 일치하는 전문적으로 형식화된 PDF입니다.

IronPDF로 PDF 서명은 표준 PFX 인증서 파일을 사용하여 Windows 인증서 저장소 및 서드파티 인증 기관과 호환됩니다.

생성된 송장은 어떻게 보이나요?

샘플 제품 항목과 총액 $250.75가 표시된 인보이스 #12345가 생성된 PDF 인보이스의 스크린샷

헤더, 푸터, 워터마크는 어떻게 추가합니까?

IronPDF는 생성된 문서의 각 페이지에 전문적인 헤더, 푸터, 워터마크를 추가하는 것을 간단하게 만듭니다. 렌더링하기 전에 RenderingOptions를 통해 구성됩니다:

using IronPdf;

var renderer = new ChromePdfRenderer();

// Add an HTML-based header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; font-family:Arial; font-size:12px;'>Annual Report 2025</div>",
    MaxHeight = 25
};

// Add a footer with automatic page numbers
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
    MaxHeight = 20
};

// Generate a multi-page document to demonstrate the header/footer
string multiPageHtml = string.Empty;
for (int i = 1; i <= 5; i++)
{
    multiPageHtml += $@"
        <div style='page-break-after: always;'>
            <h2>Section {i}</h2>
            <p>This is section {i} of the report. Content continues here with supporting analysis and data.</p>
        </div>";
}

var report = renderer.RenderHtmlAsPdf(multiPageHtml);
report.SaveAs("annual-report.pdf");
using IronPdf;

var renderer = new ChromePdfRenderer();

// Add an HTML-based header
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; font-family:Arial; font-size:12px;'>Annual Report 2025</div>",
    MaxHeight = 25
};

// Add a footer with automatic page numbers
renderer.RenderingOptions.HtmlFooter = new HtmlHeaderFooter()
{
    HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
    MaxHeight = 20
};

// Generate a multi-page document to demonstrate the header/footer
string multiPageHtml = string.Empty;
for (int i = 1; i <= 5; i++)
{
    multiPageHtml += $@"
        <div style='page-break-after: always;'>
            <h2>Section {i}</h2>
            <p>This is section {i} of the report. Content continues here with supporting analysis and data.</p>
        </div>";
}

var report = renderer.RenderHtmlAsPdf(multiPageHtml);
report.SaveAs("annual-report.pdf");
Imports IronPdf

Dim renderer As New ChromePdfRenderer()

' Add an HTML-based header
renderer.RenderingOptions.HtmlHeader = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style='text-align:center; font-family:Arial; font-size:12px;'>Annual Report 2025</div>",
    .MaxHeight = 25
}

' Add a footer with automatic page numbers
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
    .HtmlFragment = "<div style='text-align:center; font-size:10px;'>Page {page} of {total-pages}</div>",
    .MaxHeight = 20
}

' Generate a multi-page document to demonstrate the header/footer
Dim multiPageHtml As String = String.Empty
For i As Integer = 1 To 5
    multiPageHtml &= $"
        <div style='page-break-after: always;'>
            <h2>Section {i}</h2>
            <p>This is section {i} of the report. Content continues here with supporting analysis and data.</p>
        </div>"
Next

Dim report = renderer.RenderHtmlAsPdf(multiPageHtml)
report.SaveAs("annual-report.pdf")
$vbLabelText   $csharpLabel

{page}{total-pages} 토큰은 렌더링 중에 IronPDF로 자동 대체됩니다. 동적 타임스탬프를 위해 {date}{time}을 사용할 수도 있습니다.

워터마크의 경우 IronPDF는 HTML 기반 스탬프 정의를 허용하는 ApplyStamp() 방법을 사용합니다. 이는 사용자가 사용자 정의 글꼴, 투명도 및 회전을 가진 텍스트 워터마크를 생성하거나 정밀한 위치를 가진 이미지 기반 스탬프를 생성할 수 있음을 의미합니다. 전체 구성 옵션은 맞춤형 워터마크 가이드를 참조하세요.

더 많은 제어를 위한 헤더 및 푸터에 대해선 헤더 및 푸터 문서를 방문하세요.

최종 PDF에서 페이지 번호는 어떻게 나타나나요?

Lorem ipsum 텍스트가 포함된 섹션 1 및 섹션 2 헤더가 75% 줌으로 표시된 'MultiPageReport.pdf'의 2페이지 분량을 보여주는 PDF 뷰어.

IronPDF의 고급 기능은 무엇인가요?

IronPDF는 기본적인 PDF 생성 외에도 광범위한 기업 준비 기능을 제공합니다. 아래 표는 가장 일반적으로 사용되는 고급 기능을 요약한 것입니다:

IronPDF 고급 기능 개요
특징 설명 주요 사용 사례
텍스트 추출 기존 PDF에서 평문 텍스트와 구조화된 콘텐츠 추출 데이터 마이닝, 인덱싱, 검색 통합
페이지 병합 / 분할 여러 PDF를 결합하거나 특정 페이지 범위 추출 보고서 조립, 송장 일괄 처리
폼 필드 프로그래밍 방식으로 작성하고 입력할 수 있는 PDF 양식 생성 HR 온보딩, 정부 양식, 설문 조사
디지털 서명 PFX 인증서를 사용하여 암호화 서명 적용 법률 문서, 계약, 감사 기록
암호화 AES-256 암호화를 사용하여 PDF를 비밀번호 보호 기밀 보고서, 안전한 배포
워터마크 모든 페이지에 텍스트 또는 이미지 스탬프를 오버레이하십시오. 초안 레이블, 브랜딩, 저작권 고지 사항
PDF/A 규정 준수 ISO 표준 아카이벌 PDF 생성 법적 보관, 정부 제출
이미지를 PDF로 변환 JPEG, PNG, TIFF 및 기타 이미지를 PDF로 변환 스캔된 문서, 사진 앨범

PDF 파일에서 텍스트 추출은 문서 처리 파이프라인에서 일반적인 요구사항입니다. IronPDF는 전체 문서 추출을 위한 PdfDocument.ExtractAllText()와 보다 세분화된 액세스를 위한 페이지 수준 방법을 제공합니다.

PDF 병합 또는 분할은 단일 메소드 호출만 필요합니다. 여러 PdfDocument 객체를 하나로 결합하거나 전체 파일을 메모리에 로드하지 않고도 특정 페이지를 새 문서로 추출할 수 있습니다.

PDF 양식은 표준 <input>, <select>, <textarea> 요소를 사용하여 HTML에서 처음부터 만들 수 있으며, IronPDF는 이를 대화형 PDF 양식 필드로 변환합니다. 기존 양식도 프로그램을 통해 읽고 채울 수 있습니다.

이미지를 PDF로 변환하기와 다시 변환하기도 지원되어 문서 스캔 워크플로우, 썸네일 생성 및 이미지 아카이브 파이프라인에 유용합니다.

IronPDF를 어떻게 라이선스하고 배포합니까?

IronPDF는 생산 사용을 위해 라이선스 키가 필요합니다. 첫 번째 렌더링 호출 전에 코드에서 라이선스 키를 설정할 수 있습니다:

using IronPdf;

// Set your license key before using any IronPDF features
License.LicenseKey = "YOUR-LICENSE-KEY-HERE";

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Licensed Output</h1>");
pdf.SaveAs("licensed.pdf");
using IronPdf;

// Set your license key before using any IronPDF features
License.LicenseKey = "YOUR-LICENSE-KEY-HERE";

var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<h1>Licensed Output</h1>");
pdf.SaveAs("licensed.pdf");
Imports IronPdf

' Set your license key before using any IronPDF features
License.LicenseKey = "YOUR-LICENSE-KEY-HERE"

Dim renderer As New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Licensed Output</h1>")
pdf.SaveAs("licensed.pdf")
$vbLabelText   $csharpLabel

무료 체험판 라이선스는 신용카드 없이도 가능합니다. 출력에 워터마크를 포함하여 전체 기능 평가가 가능합니다. 워터마크를 제거하고 프로덕션에 배포할 준비가 되면, 단일 개발자, 팀, OEM 배포 시나리오를 다루는 가격 정보는 라이선스 페이지를 확인하세요.

배포 환경에 대해서:

  • Windows IIS: 표준 응용 프로그램 풀 아이덴티티 권한과 함께 박스에서 작동합니다.
  • Docker/Linux: Chromium 종속성을 번들로 제공하는 IronPdf.Linux 또는 IronPdf.Slim NuGet 패키지가 필요합니다.
  • Azure/AWS Lambda: IronPDF는 서버리스 배포를 지원하지만, Chrome 엔진은 안정적인 작동을 위해 최소 512 MB의 메모리 할당이 필요합니다.
  • macOS (Apple Silicon): 최신 버전에서 네이티브 ARM 바이너리로 완전히 지원됩니다.

IronPDF 기능 페이지에서는 배포 환경별로 기능을 완벽히 설명하고 있습니다. 복잡한 렌더링 워크플로의 경우, IronPDF 문서에는 고급 동시성 응용 프로그램을 위한 아키텍처 다이어그램과 스레드 안전성 지침을 포함하고 있습니다.

왜 IronPDF는 .NET PDF 생성에 실용적인 선택입니까?

IronPDF는 C#에서 PDF 생성을 간단하고 신뢰성 있게 만듭니다. 전용 PdfWriter 클래스는 필요하지 않습니다; 대신 ChromePdfRendererPdfDocument 객체는 HTML 콘텐츠부터 페이지 크기, 머리글 및 바닥글에 이르기까지 모든 것을 처리합니다. 송장, 보고서, 증명서 등을 생성하든, IronPDF는 적은 코드 라인으로 작업을 완료합니다.

HTML에서 PDF로의 접근 방식은 확실한 생산성 이점을 제공합니다: 템플릿이 표준 HTML과 CSS 파일이기 때문에 브라우저에서 미리 보기 및 반복이 가능하며 재빌드 사이클이 없습니다. 설계가 정확할 때 IronPDF를 동일한 마크업에 가리키면 브라우저 미리보기를 정확히 일치하는 PDF를 얻습니다.

라이브러리는 대용량 시나리오에 대한 병렬 처리 및 반응형 응용 프로그램을 위한 비동기 작업을 지원합니다. 수십만 개의 문서를 백그라운드 서비스에서 동시에 렌더링할 수 있으며 요청 스레드를 차단하지 않습니다.

완전한 문서, 무료 체험판, 반응형 엔지니어 지원으로 시작이 간단합니다. 새 PDF 문서를 실험하거나 이미지를 추가하거나 글꼴 크기와 페이지 레이아웃을 조정하는 것이 번거롭지 않습니다. IronPDF는 PDF 생성을 기술적 귀찮음에서 개발 워크플로의 생산적인 일부로 바꾸어 줍니다.

C# PDF 작성 워크플로를 현대화할 준비가 되셨습니까? 무료 체험판을 시작하세요 및 .NET 10에서 PDF 생성을 IronPDF가 어떻게 간소화하는지 경험하세요. 완전한 문서와 반응형 지원으로 몇 분 안에 전문적인 PDF를 생성할 수 있습니다.

!{--010011000100100101000010010100100100000101010010010110010101111101000111010001010101010001011111010100110101010001000001010101001001010100010001011111010101110100100 10101010001001000001011111010100000101001001001111010001000101010101000011010101000101111101010001010010010010010010010100000101001100010111110100001001001100010011110100001101001011--}

자주 묻는 질문

C# PDFWriter란?

C# PDFWriter는 C# 프로그래밍 언어를 사용하여 프로그램적으로 PDF 문서를 생성할 수 있도록 하는 도구입니다.

개발자가 C# PDFWriter를 선택해야 하는 이유는 무엇인가요?

개발자는 PDFWriter를 선택하면 PDF 생성 과정이 간단해져 복잡한 API 및 보일러 플레이트 코드를 줄일 수 있기 때문에 선택해야 합니다.

IronPDF는 C#에서 PDF 생성에 어떻게 기여하나요?

IronPDF는 개발자가 C# 애플리케이션 내에서 PDF 문서를 직접 생성, 조작 및 커스터마이즈할 수 있도록 간소화된 API를 제공합니다.

오래된 오픈 소스 라이브러리가 제기하는 문제점은 무엇인가요?

오래된 오픈 소스 라이브러리는 종종 복잡한 API와 광범위한 보일러플레이트 코드를 요구하여 PDF 생성이 번거롭고 시간 소모적이게 만듭니다.

IronPDF는 복잡한 PDF 생성 작업을 처리할 수 있나요?

네, IronPDF는 복잡한 PDF 생성 작업을 효율적으로 처리하도록 설계되었으며, 커스터마이즈 및 자동화를 위한 다양한 기능을 제공합니다.

IronPDF를 다른 PDF 라이브러리보다 사용하는 이점은 무엇인가요?

IronPDF는 사용자 친화적인 API, 포괄적인 문서 및 개발 시간을 줄이고 PDF 출력의 품질을 향상시키는 강력한 기능을 제공합니다.

IronPDF는 C# 초보자에게 적합한가요?

네, IronPDF는 명쾌한 코드 예제와 폭넓은 지원 리소스로 PDF 생성을 간소화하여 초보자에게 적합합니다.

IronPDF는 .NET 응용 프로그램과 어떻게 통합됩니까?

IronPDF는 .NET 애플리케이션과 매끄럽게 통합되어 개발자가 C#을 사용하여 프로젝트 내에 PDF 기능을 직접 도입할 수 있도록 합니다.

IronPDF를 사용하는 개발자에게 제공되는 지원은 어떤 것이 있나요?

IronPDF를 사용하는 개발자는 포괄적인 문서, 커뮤니티 포럼 및 개발 시의 문제를 해결하기 위한 기술 지원을 이용할 수 있습니다.

IronPDF는 웹 및 데스크톱 애플리케이션 모두에 사용할 수 있나요?

네, IronPDF는 웹 및 데스크톱 애플리케이션 모두에 사용할 수 있으며, 다양한 플랫폼에서 PDF 생성 및 관리를 유연하게 제공합니다.

IronPDF는 최신 .NET 10 버전을 지원하나요?

네, IronPDF는 .NET 10뿐만 아니라 .NET 9, 8, 7, 6, .NET Core 및 .NET Framework를 완벽히 지원하여 개발자가 최신 .NET 10 애플리케이션에서 C# PDFWriter 및 관련 API를 사용할 수 있도록 합니다.

커티스 차우
기술 문서 작성자

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

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

아이언 서포트 팀

저희는 주 5일, 24시간 온라인으로 운영합니다.
채팅
이메일
전화해