PDFsharp에서 PDF에 페이지 번호 추가하기 VS IronPDF (예제)
여전히 많은 조직이 ASP.NET 웹 폼을 은행 포털, 회계 시스템 및 내부 대시보드 뒤에서 운영합니다. 앱은 안정적이지만 사용자가 다운로드할 수 있는 문서를 제공하는 깔끔한 방법을 거의 제공하지 않습니다. PDF 내보내기 추가는 MVC나 Blazor로 플랫폼을 재구축해야 하는 이유로 간주되며, 그렇지 않으면 잘 작동하는 소프트웨어에 대한 비용이 많이 드는 움직임입니다. IronPDF는 더 저렴한 경로를 택합니다: 사용자가 이미 보고 있는 ASPX 페이지를 한 줄의 코드로 PDF로 변환합니다.
차이가 나타나는 곳
웹 폼 페이지는 일반적으로 청구서, 명세서 또는 보고서를 스타일링된 HTML로 렌더링합니다. 직원과 고객은 그러한 관점을 저장, 이메일 전송 또는 인쇄할 수 있는 휴대 가능한 파일로 원합니다. 별도 PDF 템플릿은 첫 번째 레이아웃에서 벗어난 두 번째 레이아웃을 의미합니다. 브라우저 인쇄 대화 상자는 각 기기에서 다른 결과를 제공합니다. 팀이 필요한 것은 화면에 표시되는 페이지와 일치하는 서버 측 PDF입니다.
현장에서 페이지 렌더링
IronPDF는 Page_Load 이벤트 내부에서 라이브 ASPX 페이지를 변환합니다. AspxToPdf.RenderThisPageAsPdf 메서드는 웹 보기를 위해 이미 구축된 페이지를 재사용하므로 스타일링, 링크 및 양식 필드가 유지됩니다.
using IronPdf;
public partial class Invoice : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf");
}
}Imports IronPdf
Public Partial Class Invoice
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs)
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf")
End Sub
End ClassFileBehavior.Attachment은 선택한 파일 이름으로 다운로드를 트리거합니다. FileBehavior.InBrowser는 대신 인라인으로 문서를 표시합니다.
출력 제어
렌더링 옵션은 배포에 적합한 출력 세부사항을 다룹니다: 헤더, 푸터, 페이지 번호 매기기 및 화면 전용 탐색을 제거하는 인쇄 스타일시트를 포함합니다.
var options = new ChromePdfRenderOptions
{
CssMediaType = IronPdf.Rendering.PdfCssMediaType.Print,
TextFooter = new TextHeaderFooter
{
LeftText = "{date} - {time}",
RightText = "Page {page} of {total-pages}"
}
};
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", options);Imports IronPdf.Rendering
Dim options As New ChromePdfRenderOptions With {
.CssMediaType = PdfCssMediaType.Print,
.TextFooter = New TextHeaderFooter With {
.LeftText = "{date} - {time}",
.RightText = "Page {page} of {total-pages}"
}
}
AspxToPdf.RenderThisPageAsPdf(AspxToPdf.FileBehavior.Attachment, "Invoice.pdf", options)완전한 변환을 결정하는 설정
로드 테스트로 변환이 유효한지 여부를 결정하는 몇 가지 선택:
- 동적 콘텐츠: Ajax 또는 클라이언트 측 차트를 사용하는 페이지는
EnableJavaScript과WaitFor규칙이 필요하여 렌더링이 완료된 페이지를 캡처합니다. WaitFor 가이드를 참조하세요. - 프린트 스타일링:
CssMediaType을 Print로 설정하면 전용 스타일 시트가 적용되어 문서에서 버튼과 메뉴가 빠집니다. - 처리량: Chromium 렌더링은 리소스를 많이 소모하므로, 비동기 처리를 통해 고부하 엔드포인트를 응답성 있게 유지합니다.
한 줄, 다시 쓰기 없음
기존 페이지 내의 단일 호출은 웹 폼 애플리케이션에 청구서 다운로드, 인쇄 가능한 명세서, 내보낼 수 있는 보고서를 제공합니다. 마이그레이션이 필요하지 않습니다. 전체 메서드 참조와 구성 옵션은 ASPX에서 PDF로 가이드에서 확인할 수 있습니다.

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