ASP.NET에서 웹페이지를 PDF로 변환하는 방법
ASP.NET에서 HTML 페이지를 PDF로 변환하는 것은 IronPDF의 ChromePdfRenderer 클래스를 사용하면 간단합니다. 이 클래스는 HTML 문자열, URL, ASPX 페이지를 고품질의 PDF 문서로 변환하며, C# 코드 몇 줄만으로 가능합니다.
ASP.NET 애플리케이션에서 다운로드 가능한 보고서, 송장 또는 보관 문서를 생성해야 할 때, 웹 콘텐츠를 PDF로 변환하는 것이 가장 일반적인 요구 사항 중 하나입니다. IronPDF는 ASP.NET에서 웹 페이지를 PDF로 변환하는 직접 경로를 제공하며, 간단한 HTML 문자열부터 완전히 렌더링된 동적 웹 페이지까지 처리할 수 있으며 별도의 브라우저 설치나 복잡한 설정이 필요하지 않습니다.
이 가이드는 기본 HTML 문자열 렌더링부터 URL 기반 페이지 캡처 및 ASP.NET 웹 폼 통합에 이르기까지 IronPDF에서 사용할 수 있는 기본 변환 방법을 설명합니다. 마무리할 때마다 각 시나리오에 대해 작동하는 C# 코드를 보유하고 어떤 접근 방식을 사용할지 명확하게 이해할 수 있을 것입니다.
IronPDF를 설치하고 설정하는 방법은?
콘텐츠를 변환하기 전에 ASP.NET 프로젝트에 IronPDF를 설치하십시오. 라이브러리는 NuGet를 통해 배포되며, .NET 6, .NET 8, .NET 10 및 .NET Framework에서 작동합니다:
Install-Package IronPdf
dotnet add package IronPdf
Install-Package IronPdf
dotnet add package IronPdf
설치 후 C# 파일 상단에 네임스페이스를 추가하십시오:
using IronPdf;
using IronPdf;
Imports IronPdf
IronPDF는 ASP.NET 웹 폼 및 ASP.NET Core 애플리케이션 모두에서 작동합니다. Windows Server와 IIS 배포, Docker 컨테이너화, Azure 함수, AWS Lambda를 통해 클라우드 네이티브 아키텍처를 지원합니다. 플랫폼별 설정 세부 정보 및 Linux 배포 지침에 대한 설치 개요를 검토하십시오.
HTML 문자열을 PDF로 변환하는 방법은?
IronPDF에서 PDF 생성을 위한 주요 진입점은 ChromePdfRenderer 클래스입니다. HTML 콘텐츠를 문자열로 갖고 있을 경우, 동적으로 생성되었든 템플릿에서 불러왔든, RenderHtmlAsPdf 메서드는 이를 즉시 PDF 문서로 변환합니다.
이 접근 방식은 데이터베이스 기록이나 애플리케이션 데이터에서 프로그램적으로 HTML을 구성하여 보고서, 송장, 영수증을 생성하는 데 이상적입니다. 렌더러는 현대 브라우저를 구동하는 크로니움 기반 엔진을 사용하여 HTML을 처리하므로, CSS 레이아웃, 웹 글꼴 및 표준 HTML5 요소가 모두 올바르게 렌더링됩니다.
using IronPdf;
var renderer = new ChromePdfRenderer();
string htmlContent = @"
<h1>Quarterly Sales Report</h1>
<p>Q3 2025 -- Summary of key revenue metrics and product performance.</p>
<table>
<thead><tr><th>Product</th><th>Units</th><th>Revenue</th></tr></thead>
<tbody>
<tr><td>Widget A</td><td>320</td><td>$8,960</td></tr>
<tr><td>Widget B</td><td>150</td><td>$6,750</td></tr>
<tr><td>Widget C</td><td>210</td><td>$3,055.30</td></tr>
</tbody>
</table>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("quarterly-report.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
string htmlContent = @"
<h1>Quarterly Sales Report</h1>
<p>Q3 2025 -- Summary of key revenue metrics and product performance.</p>
<table>
<thead><tr><th>Product</th><th>Units</th><th>Revenue</th></tr></thead>
<tbody>
<tr><td>Widget A</td><td>320</td><td>$8,960</td></tr>
<tr><td>Widget B</td><td>150</td><td>$6,750</td></tr>
<tr><td>Widget C</td><td>210</td><td>$3,055.30</td></tr>
</tbody>
</table>";
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
pdf.SaveAs("quarterly-report.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim htmlContent As String = "
<h1>Quarterly Sales Report</h1>
<p>Q3 2025 -- Summary of key revenue metrics and product performance.</p>
<table>
<thead><tr><th>Product</th><th>Units</th><th>Revenue</th></tr></thead>
<tbody>
<tr><td>Widget A</td><td>320</td><td>$8,960</td></tr>
<tr><td>Widget B</td><td>150</td><td>$6,750</td></tr>
<tr><td>Widget C</td><td>210</td><td>$3,055.30</td></tr>
</tbody>
</table>"
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
pdf.SaveAs("quarterly-report.pdf")
HTML이 상대 경로를 사용하는 외부 스타일시트나 이미지를 참조하는 경우, 기본 디렉터리를 두 번째 인수로 제공합니다. 이는 IronPDF가 해당 참조를 어디에서 해결해야 하는지 알려줍니다:
using IronPdf;
var renderer = new ChromePdfRenderer();
string html = @"
<link rel='stylesheet' href='styles.css'>
<h1>Company Report</h1>
<div>Annual Summary</div>";
// Provide the base path so the renderer can locate relative resources
var pdf = renderer.RenderHtmlAsPdf(html, @"C:\Reports\Assets\");
pdf.SaveAs("annual-report.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
string html = @"
<link rel='stylesheet' href='styles.css'>
<h1>Company Report</h1>
<div>Annual Summary</div>";
// Provide the base path so the renderer can locate relative resources
var pdf = renderer.RenderHtmlAsPdf(html, @"C:\Reports\Assets\");
pdf.SaveAs("annual-report.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
Dim html As String = "
<link rel='stylesheet' href='styles.css'>
<h1>Company Report</h1>
<div>Annual Summary</div>"
' Provide the base path so the renderer can locate relative resources
Dim pdf = renderer.RenderHtmlAsPdf(html, "C:\Reports\Assets\")
pdf.SaveAs("annual-report.pdf")

자산 처리에 대한 자세한 내용은 기본 URL 및 자산 인코딩 및 HTML to PDF 튜토리얼을 참조하십시오. 데이터 URI 이미지 임베딩을 포함한 고급 렌더링 기술이 포함되어 있습니다.
URL을 PDF로 변환하는 방법은?
기존 웹 페이지를 캡처해야 할 경우, 내부 애플리케이션 경로든 공개 URL이든 IronPDF의 RenderUrlAsPdf 메서드는 전체 페이지 내용을 가져와 PDF로 변환합니다. 출력은 브라우저에서 렌더링된 스타일, 이미지 및 레이아웃을 정확히 보존합니다.
정적 웹 페이지 렌더링
대부분 정적 콘텐츠를 제공하는 페이지의 경우, RenderUrlAsPdf 기본 호출만으로 충분합니다. 이 방법은 SSL 인증서, 리다이렉션 및 콘텐츠 인코딩을 자동으로 처리합니다:
using IronPdf;
var renderer = new ChromePdfRenderer();
// 옵션al: wait a short time for the page to finish loading
renderer.Rendering옵션s.WaitFor.RenderDelay(500);
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.SaveAs("wikipedia-pdf-article.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// 옵션al: wait a short time for the page to finish loading
renderer.Rendering옵션s.WaitFor.RenderDelay(500);
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");
pdf.SaveAs("wikipedia-pdf-article.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Optional: wait a short time for the page to finish loading
renderer.RenderingOptions.WaitFor.RenderDelay(500)
Dim pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/PDF")
pdf.SaveAs("wikipedia-pdf-article.pdf")
JavaScript 또는 인증이 필요한 페이지 렌더링
인증이 필요하거나 JavaScript를 사용하여 데이터를 동적으로 로드하는 페이지의 경우, 적절한 자격 증명 및 대기 전략으로 렌더러를 구성하십시오.
using IronPdf;
var renderer = new ChromePdfRenderer();
// Enable JavaScript for pages that load content after the initial HTML response
renderer.Rendering옵션s.EnableJavaScript = true;
renderer.Rendering옵션s.WaitFor.NetworkIdle(500);
// Provide credentials for authenticated internal pages
renderer.LoginCredentials = new ChromeHttpLoginCredentials()
{
NetworkUsername = "service-account",
NetworkPassword = "secure-password"
};
var pdf = renderer.RenderUrlAsPdf("https://app.internal/reports/monthly");
pdf.SaveAs("monthly-report.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Enable JavaScript for pages that load content after the initial HTML response
renderer.Rendering옵션s.EnableJavaScript = true;
renderer.Rendering옵션s.WaitFor.NetworkIdle(500);
// Provide credentials for authenticated internal pages
renderer.LoginCredentials = new ChromeHttpLoginCredentials()
{
NetworkUsername = "service-account",
NetworkPassword = "secure-password"
};
var pdf = renderer.RenderUrlAsPdf("https://app.internal/reports/monthly");
pdf.SaveAs("monthly-report.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Enable JavaScript for pages that load content after the initial HTML response
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.WaitFor.NetworkIdle(500)
' Provide credentials for authenticated internal pages
renderer.LoginCredentials = New ChromeHttpLoginCredentials() With {
.NetworkUsername = "service-account",
.NetworkPassword = "secure-password"
}
Dim pdf = renderer.RenderUrlAsPdf("https://app.internal/reports/monthly")
pdf.SaveAs("monthly-report.pdf")

세션 쿠키나 Windows 인증을 사용하는 사이트의 경우, TLS 및 시스템 로그인에 대한 가이드를 검토하세요. 쿠키 처리와 사용자 지정 HTTP 헤더를 포함한 전체 구성 옵션 목록을 보려면 URL to PDF 문서를 참조하세요.
ASP.NET 웹 폼에서 ASPX 페이지를 PDF로 변환하려면 어떻게 해야 하나요?
ASP.NET Web Forms 애플리케이션을 위한 IronPDF는 현재 렌더링된 ASPX 페이지를 직접 PDF로 변환하는 AspxToPdf 클래스를 제공하며, 별도의 HTTP 요청이나 페이지 콘텐츠 재 렌더링이 필요하지 않습니다.
기본 1줄 ASPX 변환
페이지 이벤트 핸들러 내부에서 RenderThisPageAsPdf()를 호출하면, IronPDF는 응답을 가로채어 이를 PDF 다운로드로 대체합니다:
using IronPdf;
protected void Page_Load(object sender, EventArgs e)
{
// Configure paper settings before rendering
IronPdf.AspxToPdf.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
IronPdf.AspxToPdf.Rendering옵션s.MarginTop = 20;
IronPdf.AspxToPdf.Rendering옵션s.MarginBottom = 20;
// Convert the current ASPX page to PDF and send it to the browser
IronPdf.AspxToPdf.RenderThisPageAsPdf(
IronPdf.AspxToPdf.FileBehavior.InBrowser,
"invoice-" + DateTime.UtcNow.ToString("yyyy-MM-dd") + ".pdf"
);
}
using IronPdf;
protected void Page_Load(object sender, EventArgs e)
{
// Configure paper settings before rendering
IronPdf.AspxToPdf.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
IronPdf.AspxToPdf.Rendering옵션s.MarginTop = 20;
IronPdf.AspxToPdf.Rendering옵션s.MarginBottom = 20;
// Convert the current ASPX page to PDF and send it to the browser
IronPdf.AspxToPdf.RenderThisPageAsPdf(
IronPdf.AspxToPdf.FileBehavior.InBrowser,
"invoice-" + DateTime.UtcNow.ToString("yyyy-MM-dd") + ".pdf"
);
}
Imports IronPdf
Protected Sub Page_Load(sender As Object, e As EventArgs)
' Configure paper settings before rendering
IronPdf.AspxToPdf.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter
IronPdf.AspxToPdf.Rendering옵션s.MarginTop = 20
IronPdf.AspxToPdf.Rendering옵션s.MarginBottom = 20
' Convert the current ASPX page to PDF and send it to the browser
IronPdf.AspxToPdf.RenderThisPageAsPdf( _
IronPdf.AspxToPdf.FileBehavior.InBrowser, _
"invoice-" & DateTime.UtcNow.ToString("yyyy-MM-dd") & ".pdf" _
)
End Sub

이 방법은 페이지 수명 주기 동안 생성된 모든 HTML 구조, 스타일 및 동적 콘텐츠를 캡처합니다. ASPX 변환 옵션의 전체 목록은 ASPX to PDF 가이드와 고급 설정 예제를 참조하세요.
PDF 문서에 머리글과 바닥글을 추가하려면 어떻게 해야 하나요?
머리글과 바닥글은 전문 보고서 및 송장에서 표준으로 사용됩니다. IronPDF는 페이지 번호 및 현재 날짜와 같은 동적 값을 위한 내장 플레이스홀더와 함께 텍스트 기반 및 HTML 기반 머리글과 바닥글을 모두 지원합니다.
텍스트 및 HTML 머리글
TextHeaderFooter 클래스는 각 페이지의 왼쪽, 가운데, 오른쪽에 간단한 텍스트를 정의할 수 있게 해줍니다. {page}, {total-pages}, {date} 같은 플레이스홀더는 렌더링 중 자동으로 채워집니다. 로고와 사용자 정의 레이아웃이 포함된 브랜딩 헤더가 필요할 때는 대신 HtmlHeaderFooter를 사용하십시오. 이 HTML 조각은 문서 본문과 동일한 렌더링 엔진에 의해 처리됩니다:
using IronPdf;
var renderer = new ChromePdfRenderer();
// Simple text header with divider line
renderer.Rendering옵션s.TextHeader = new TextHeaderFooter()
{
CenterText = "Quarterly Financial Report",
LeftText = "Document ID: {document-id}",
RightText = "{date:yyyy-MM-dd}",
DrawDividerLine = true,
FontSize = 10,
FontFamily = "Arial"
};
// HTML footer with branded layout
renderer.Rendering옵션s.HtmlFooter = new HtmlHeaderFooter()
{
HtmlFragment = @"
<div style='border-top: 1px solid #ccc; padding: 8px; font-size: 10px;
display: flex; justify-content: space-between;'>
<span>© 2026 Enterprise Corp</span>
<span>Page {page} of {total-pages}</span>
<span>Classification: Internal</span>
</div>",
MaxHeight = 40
};
renderer.Rendering옵션s.MarginTop = 40;
renderer.Rendering옵션s.MarginBottom = 40;
var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1><p>Financial data goes here.</p>");
pdf.SaveAs("report-with-headers.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Simple text header with divider line
renderer.Rendering옵션s.TextHeader = new TextHeaderFooter()
{
CenterText = "Quarterly Financial Report",
LeftText = "Document ID: {document-id}",
RightText = "{date:yyyy-MM-dd}",
DrawDividerLine = true,
FontSize = 10,
FontFamily = "Arial"
};
// HTML footer with branded layout
renderer.Rendering옵션s.HtmlFooter = new HtmlHeaderFooter()
{
HtmlFragment = @"
<div style='border-top: 1px solid #ccc; padding: 8px; font-size: 10px;
display: flex; justify-content: space-between;'>
<span>© 2026 Enterprise Corp</span>
<span>Page {page} of {total-pages}</span>
<span>Classification: Internal</span>
</div>",
MaxHeight = 40
};
renderer.Rendering옵션s.MarginTop = 40;
renderer.Rendering옵션s.MarginBottom = 40;
var pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1><p>Financial data goes here.</p>");
pdf.SaveAs("report-with-headers.pdf");
Imports IronPdf
Dim renderer As New ChromePdfRenderer()
' Simple text header with divider line
renderer.RenderingOptions.TextHeader = New TextHeaderFooter() With {
.CenterText = "Quarterly Financial Report",
.LeftText = "Document ID: {document-id}",
.RightText = "{date:yyyy-MM-dd}",
.DrawDividerLine = True,
.FontSize = 10,
.FontFamily = "Arial"
}
' HTML footer with branded layout
renderer.RenderingOptions.HtmlFooter = New HtmlHeaderFooter() With {
.HtmlFragment = "
<div style='border-top: 1px solid #ccc; padding: 8px; font-size: 10px;
display: flex; justify-content: space-between;'>
<span>© 2026 Enterprise Corp</span>
<span>Page {page} of {total-pages}</span>
<span>Classification: Internal</span>
</div>",
.MaxHeight = 40
}
renderer.RenderingOptions.MarginTop = 40
renderer.RenderingOptions.MarginBottom = 40
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Report Content</h1><p>Financial data goes here.</p>")
pdf.SaveAs("report-with-headers.pdf")

사용 가능한 플레이스홀더와 고급 브랜딩 패턴의 전체 목록은 머리글 및 바닥글 문서를 참조하세요.
PDF 페이지 레이아웃 및 렌더링 옵션을 설정하려면 어떻게 해야 하나요?
IronPDF는 Rendering옵션s 속성을 통해 페이지 레이아웃, 여백, DPI 및 CSS 렌더링 동작에 대한 완전한 제어를 제공합니다. 여기서 용지 크기, 인쇄 vs 화면 CSS 및 대화형 양식 생성을 구성합니다.
주요 렌더링 옵션
using IronPdf;
var renderer = new ChromePdfRenderer();
// Set paper dimensions and orientation
renderer.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
renderer.Rendering옵션s.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
// Define margins (values in millimeters)
renderer.Rendering옵션s.MarginTop = 25;
renderer.Rendering옵션s.MarginBottom = 25;
renderer.Rendering옵션s.MarginLeft = 19;
renderer.Rendering옵션s.MarginRight = 19;
// Use print-specific CSS rules and set output DPI
renderer.Rendering옵션s.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.Rendering옵션s.DPI = 300;
// Preserve HTML form elements as interactive PDF form fields
renderer.Rendering옵션s.CreatePdfFormsFromHtml = true;
var pdf = renderer.RenderHtmlAsPdf("<h1>Custom Layout Document</h1><p>Content with configured layout.</p>");
pdf.SaveAs("configured-output.pdf");
using IronPdf;
var renderer = new ChromePdfRenderer();
// Set paper dimensions and orientation
renderer.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
renderer.Rendering옵션s.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
// Define margins (values in millimeters)
renderer.Rendering옵션s.MarginTop = 25;
renderer.Rendering옵션s.MarginBottom = 25;
renderer.Rendering옵션s.MarginLeft = 19;
renderer.Rendering옵션s.MarginRight = 19;
// Use print-specific CSS rules and set output DPI
renderer.Rendering옵션s.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print;
renderer.Rendering옵션s.DPI = 300;
// Preserve HTML form elements as interactive PDF form fields
renderer.Rendering옵션s.CreatePdfFormsFromHtml = true;
var pdf = renderer.RenderHtmlAsPdf("<h1>Custom Layout Document</h1><p>Content with configured layout.</p>");
pdf.SaveAs("configured-output.pdf");
Imports IronPdf
Dim renderer = New ChromePdfRenderer()
' Set paper dimensions and orientation
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait
' Define margins (values in millimeters)
renderer.RenderingOptions.MarginTop = 25
renderer.RenderingOptions.MarginBottom = 25
renderer.RenderingOptions.MarginLeft = 19
renderer.RenderingOptions.MarginRight = 19
' Use print-specific CSS rules and set output DPI
renderer.RenderingOptions.CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print
renderer.RenderingOptions.DPI = 300
' Preserve HTML form elements as interactive PDF form fields
renderer.RenderingOptions.CreatePdfFormsFromHtml = True
Dim pdf = renderer.RenderHtmlAsPdf("<h1>Custom Layout Document</h1><p>Content with configured layout.</p>")
pdf.SaveAs("configured-output.pdf")

아래 표는 주요 렌더링 옵션과 출력에 대한 그들의 영향을 요약한 것입니다:
| 옵션 | 목적 | 예시 값 |
|---|---|---|
| `PaperSize` | 용지 크기 설정 (Letter, A4, Legal 등) | `PdfPaperSize.A4` |
| `MarginTop / MarginBottom` | 페이지 여백을 밀리미터 단위로 설정 | `25` |
| `DPI` | 출력 해상도 -- 인쇄 품질을 위해 높은 값 | `300` |
| `CssMediaType` | 화면 및 인쇄 CSS 규칙 선택 | `PdfCssMediaType.Print` |
| `EnableJavaScript` | 렌더링 중 JavaScript 실행 활성화 또는 비활성화 | `true` |
| `CreatePdfFormsFromHtml` | HTML 폼 요소를 대화형 PDF 폼으로 변환 | `true` |
| `WaitFor.RenderDelay` | JS 실행을 허용하기 위해 캡처 전에 지연 추가 | `500` (ms) |
사용 가능한 옵션의 전체 참조는 렌더링 옵션 가이드를 참조하세요. 관련 가이드는 반응형 CSS 처리 및 페이지 나누기 제어를 다루며 일반 레이아웃 문제를 해결합니다.
ASP.NET Core MVC에서 PDF를 생성하려면 어떻게 해야 하나요?
ASP.NET Core MVC에서는 File()를 사용하여 컨트롤러 액션에서 직접 PDF를 반환합니다. 패턴은 내부 URL 또는 HTML 문자열을 PdfDocument 객체로 렌더링한 다음, application/pdf MIME 유형과 함께 바이너리 데이터를 반환하는 것입니다.
컨트롤러 액션에서 PDF 반환
다음 예제는 내부 보고서 URL을 렌더링하고 결과를 파일 다운로드로 반환합니다. Microsoft ASP.NET Core MVC 문서는 기본 Controller 클래스와 File() 반환 유형을 자세히 다룹니다:
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportsController : Controller
{
public IActionResult GeneratePdf()
{
var renderer = new ChromePdfRenderer();
renderer.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
renderer.Rendering옵션s.MarginTop = 20;
renderer.Rendering옵션s.MarginBottom = 20;
// Add a text footer with page numbers
renderer.Rendering옵션s.TextFooter = new TextHeaderFooter()
{
CenterText = "Page {page} of {total-pages}",
FontSize = 9
};
// Build the URL to the internal report page and render it
string reportUrl = $"{Request.Scheme}://{Request.Host}/reports/quarterly";
var pdf = renderer.RenderUrlAsPdf(reportUrl);
return File(pdf.BinaryData, "application/pdf", "quarterly-report.pdf");
}
}
using IronPdf;
using Microsoft.AspNetCore.Mvc;
public class ReportsController : Controller
{
public IActionResult GeneratePdf()
{
var renderer = new ChromePdfRenderer();
renderer.Rendering옵션s.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter;
renderer.Rendering옵션s.MarginTop = 20;
renderer.Rendering옵션s.MarginBottom = 20;
// Add a text footer with page numbers
renderer.Rendering옵션s.TextFooter = new TextHeaderFooter()
{
CenterText = "Page {page} of {total-pages}",
FontSize = 9
};
// Build the URL to the internal report page and render it
string reportUrl = $"{Request.Scheme}://{Request.Host}/reports/quarterly";
var pdf = renderer.RenderUrlAsPdf(reportUrl);
return File(pdf.BinaryData, "application/pdf", "quarterly-report.pdf");
}
}
Imports IronPdf
Imports Microsoft.AspNetCore.Mvc
Public Class ReportsController
Inherits Controller
Public Function GeneratePdf() As IActionResult
Dim renderer As New ChromePdfRenderer()
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.Letter
renderer.RenderingOptions.MarginTop = 20
renderer.RenderingOptions.MarginBottom = 20
' Add a text footer with page numbers
renderer.RenderingOptions.TextFooter = New TextHeaderFooter() With {
.CenterText = "Page {page} of {total-pages}",
.FontSize = 9
}
' Build the URL to the internal report page and render it
Dim reportUrl As String = $"{Request.Scheme}://{Request.Host}/reports/quarterly"
Dim pdf = renderer.RenderUrlAsPdf(reportUrl)
Return File(pdf.BinaryData, "application/pdf", "quarterly-report.pdf")
End Function
End Class

Razor 뷰 렌더링에 대해서는 CSHTML을 PDF로 변환 및 HTTP 없이 Razor 뷰 렌더링을 참조하세요. 애플리케이션이 많은 양의 PDF 요청을 처리하는 경우, 비동기 PDF 생성을 검토하여 로드 아래에서도 애플리케이션을 반응적으로 유지할 수 있는 비차단 생성 패턴을 사용할 수 있습니다.
IronPDF는 어떤 보안 및 준수 기능을 지원하나요?
기본 PDF 생성 외에도 IronPDF는 문서 보안, 장기 보관, 또는 접근성 준수가 필요한 조직을 위한 일련의 기능을 포함합니다. 이것들은 문서가 정의된 규제 표준을 충족해야 하는 금융, 의료, 법률, 정부 애플리케이션에 특히 관련이 있습니다.
문서 보안
암호 보호 및 권한을 통해 PDF의 내용을 열람, 인쇄, 편집 또는 복사할 수 있는 사람을 제어할 수 있습니다. 구성 세부사항은 권한 및 암호 가이드를 참조하세요.
IronPDF는 X.509 인증서를 통한 디지털 서명을 지원하며, 엄격한 키 관리가 요구되는 조직을 위한 HSM 기반 서명도 지원합니다. 디지털 서명 가이드를 검토하세요.
보관 및 접근성 준수
규제 산업에서의 장기 문서 보관을 위해, IronPDF는 표준 PDF를 아카이브 급 문서의 ISO 표준인 PDF/A 형식으로 변환할 수 있습니다.
섹션 508 및 WCAG 접근성 요구 사항을 충족하기 위해, IronPDF는 태그가 지정된 접근 가능한 PDF를 PDF/UA 표준에 따라 생성할 수 있습니다.
내용 수정 및 메타데이터
민감한 정보는 복구 가능한 흔적 없이 내용을 제거하는 편집 기능을 사용하여 영구적으로 제거할 수 있습니다. 감사 기록 및 문서 분류를 위해, 작성자, 생성 날짜, 키워드 및 사용자 정의 메타데이터 필드를 메타데이터 가이드를 통해 설정할 수 있습니다.
무료 체험판으로 시작하는 방법은?
IronPDF는 이 가이드에 포함된 모든 기능, 따라서 PDF 생성, 보안 제어, 머리글 및 바닥글, 준수 기능을 포함하는 무료 체험판 라이센스와 함께 제공됩니다. 테스트를 시작하는 데 신용 카드는 필요하지 않습니다.
추가 기능을 탐색하기 위해, 가장 일반적인 PDF 시나리오를 다루는 작업 구현을 위한 완전한 API 참조 및 코드 예제 라이브러리를 검토하세요. 퀵스타트 가이드는 IronPDF로 처음 프로젝트를 시작할 경우 집중적인 시작점을 제공합니다.
프로덕션 배포를 위해, 파일 크기를 줄일 수 있는 PDF 압축, 문서 관리를 위한 PDF 병합 및 분할, 스캔한 문서에서 텍스트를 추출하는 IronOCR을 통한 OCR 기능을 탐색하세요. 모든 Iron Software 제품은 호환 가능한 라이센스를 공유하며 같은 애플리케이션에서 함께 사용할 수 있습니다.
자주 묻는 질문
ASP.NET에서 웹 페이지를 PDF로 어떻게 변환할 수 있나요?
IronPDF, .NET 라이브러리를 사용하여 ASP.NET 응용 프로그램에서 웹 페이지를 PDF로 변환할 수 있습니다. 이는 HTML 콘텐츠로부터 전문적인 PDF 파일을 몇 줄의 C# 코드로 생성할 수 있게 해줍니다.
ASP.NET에서 HTML을 PDF로 변환하는 일반적인 사용 사례는 무엇인가요?
일반적인 사용 사례로는 보고서 생성, 송장 생성, 그리고 ASP.NET 응용 프로그램 내에서 PDF 형식으로 다운로드 가능한 콘텐츠 제공 등이 있습니다.
IronPDF는 전문 등급의 PDF를 생성하기에 적합한가요?
네, IronPDF는 HTML과 웹 페이지를 고품질의 전문적인 PDF 문서로 변환하도록 설계되어 비즈니스 및 기업 응용 프로그램에 적합합니다.
IronPDF를 ASP.NET 응용 프로그램에서 사용하는 것이 얼마나 쉬운가요?
IronPDF는 매우 사용자 친화적입니다. 개발자가 최소한의 코드로 HTML을 PDF로 변환할 수 있게 하여 기존 ASP.NET 응용 프로그램에 쉽게 통합할 수 있습니다.
IronPDF는 CSS 및 JavaScript가 포함된 복잡한 웹 페이지를 처리할 수 있나요?
네, IronPDF는 CSS와 JavaScript가 포함된 복잡한 웹 페이지를 처리하여 결과 PDF가 원본 웹 페이지의 모습과 느낌을 유지하도록 보장합니다.
IronPDF를 사용하여 웹 페이지에서 PDF 생성을 자동화할 수 있나요?
물론입니다. IronPDF는 ASP.NET 응용 프로그램에서 웹 페이지로부터의 PDF 생성을 자동으로 진행하게 워크플로우에 통합될 수 있습니다.
IronPDF가 HTML 파일을 직접 PDF로 변환할 수 있나요?
네, IronPDF는 웹 페이지뿐만 아니라 로컬 HTML 파일도 직접 PDF 문서로 변환할 수 있습니다.
IronPDF의 PDF 변환에 사용되는 프로그래밍 언어는 무엇인가요?
ASP.NET 응용 프로그램에서 HTML과 웹 페이지를 PDF로 변환할 때 IronPDF는 C#을 사용합니다.
IronPDF는 동적인 웹 콘텐츠로부터 PDF를 생성할 수 있나요?
네, IronPDF는 동적인 웹 콘텐츠를 처리할 수 있으며, 변환 시점의 웹 페이지의 최신 버전을 반영하는 PDF를 생성합니다.
IronPDF 사용하여 HTML을 PDF로 변환할 때의 장점은 무엇인가요?
IronPDF는 HTML을 PDF로 변환하는 강력하고 간단한 방법을 제공하여 사용의 용이성, 고품질 출력, 복잡한 레이아웃 지원 및 자동화 기능과 같은 이점을 제공합니다.


