ASP.NET MVC에서 C#으로 뷰 PDF 변환하는 방법
IronPDF를 사용하여 ASP.NET MVC 뷰를 PDF 문서로 변환할 수 있으며, ChromePdfRenderer.RenderView() 메서드를 사용해 몇 줄의 코드만으로 가능합니다. IronPdf.Extensions.Mvc.Framework 패키지는 ASP.NET MVC 프로젝트와 원활하게 통합되어 CSHTML 뷰를 PDF로 렌더링할 수 있도록 지원합니다.
뷰는 ASP.NET Framework에서 웹 애플리케이션의 HTML 마크업을 생성하는 데 사용되는 구성 요소입니다. 이는 ASP.NET MVC 및 ASP.NET Core MVC 애플리케이션에서 일반적으로 사용되는 모델-뷰-컨트롤러(MVC) 패턴의 일부입니다. 뷰는 HTML 콘텐츠를 동적으로 렌더링하여 사용자에게 데이터를 표시하는 역할을 합니다. IronPDF의 Chrome PDF 렌더링 엔진 의 강력한 성능 덕분에 모든 스타일, 레이아웃 및 대화형 요소를 유지하면서 픽셀 단위까지 완벽하게 정확하게 뷰가 렌더링됩니다.
ASP.NET 웹 애플리케이션(.NET Framework) MVC는 마이크로소프트에서 제공하는 웹 애플리케이션 프레임워크입니다. 이 시스템은 웹 애플리케이션 개발을 체계화하고 효율화하기 위해 모델-뷰-컨트롤러(MVC)라는 구조화된 아키텍처 패턴을 따릅니다.
- 모델: 데이터, 비즈니스 로직 및 데이터 무결성을 관리합니다.
- 보기: 사용자 인터페이스를 표시하고 정보를 렌더링합니다.
- 컨트롤러: 사용자 입력을 처리하고, 요청을 처리하며, 모델과 뷰 간의 상호 작용을 조율합니다.
IronPDF ASP.NET MVC 프로젝트 내의 뷰에서 PDF 파일을 생성하는 과정을 간소화합니다. 이를 통해 ASP.NET MVC에서 PDF를 쉽고 간편하게 생성할 수 있습니다. 웹 페이지에서 송장, 보고서 또는 기타 문서를 생성하든 관계없이 IronPDF 전문적인 PDF 출력을 위한 도구를 제공합니다. 자세한 설치 가이드는 설치 개요 페이지를 참조하십시오.
빠른 시작: ASP.NET MVC 뷰를 PDF로 손쉽게 변환하기
IronPDF 사용하여 ASP.NET MVC 뷰를 PDF 문서로 빠르게 변환하는 방법을 알아보세요. 단 몇 줄의 코드로 CSHTML 뷰를 고품질 PDF로 렌더링하여 애플리케이션 기능을 향상시킬 수 있습니다. IronPDF 프로세스를 간소화하여 모든 수준의 개발자가 쉽게 사용할 수 있도록 합니다. IronPDF ASP.NET Core 프로젝트에 통합하여 뷰에서 PDF를 손쉽게 생성하는 방법을 알아보세요.
-
NuGet 패키지 관리자를 사용하여 https://www.nuget.org/packages/IronPdf 설치하기
PM > Install-Package IronPdf -
다음 코드 조각을 복사하여 실행하세요.
// Install-Package IronPdf.Extensions.Razor var pdf = new IronPdf.ChromePdfRenderer.RenderRazorToPdf(this.ControllerContext); -
실제 운영 환경에서 테스트할 수 있도록 배포하세요.
무료 체험판으로 오늘 프로젝트에서 IronPDF 사용 시작하기
최소 워크플로우(5단계)
- ASP.NET MVC에서 뷰를 PDF로 변환하는 C# 라이브러리를 다운로드하세요.
- 데이터에 대한 모델 클래스를 추가하세요
- 컨트롤러에 "Person" 액션을 생성하고 `RenderView` 메서드를 사용하세요.
- MVC 5 뷰 스캐폴딩을 사용하여 뷰 추가하기
- 빠른 시작을 위해 샘플 프로젝트를 다운로드하세요.
어떤 확장 패키지가 필요합니까?
IronPDF 확장 패키지가 필요한 이유는 무엇입니까?
IronPdf.Extensions.Mvc.Framework 패키지는 IronPDF 메인 패키지의 확장 기능입니다. ASP.NET MVC에서 뷰를 PDF 문서로 렌더링하려면 IronPDF 패키지와 IronPDF 패키지가 모두 필요합니다. 이러한 분리를 통해 핵심 PDF 렌더링 기능을 유지하면서 MVC 프레임워크에 특화된 최적화된 기능을 구현할 수 있습니다.
확장 패키지를 설치하는 방법은 무엇인가요?
Install-Package IronPdf.Extensions.Mvc.Framework
Install-Package IronPdf.Extensions.Mvc.Framework
뷰를 PDF로 렌더링하는 방법은 무엇인가요?
어떤 프로젝트 유형이 필요합니까?
뷰를 PDF 파일로 변환하려면 ASP.NET 웹 애플리케이션(.NET Framework) MVC 프로젝트가 필요합니다. IronPDF 다양한 MVC 버전을 지원하며, 사용자의 요구 사항에 따라 PDF 출력을 사용자 정의할 수 있는 광범위한 렌더링 옵션을 제공합니다.
모델 클래스를 어떻게 추가하나요?
모델은 어디에 만들어야 할까요?
- "모델" 폴더로 이동하세요
- "Person"이라는 이름의 새로운 C# 클래스 파일을 생성하세요. 이 클래스는 개인 데이터를 나타내는 모델 역할을 합니다. 다음 코드를 사용하세요:
:path=/static-assets/pdf/content-code-examples/how-to/cshtml-to-pdf-mvc-framework-model.cs
namespace ViewToPdfMVCSample.Models
{
public class Person
{
public int Id { get; set; }
public string Name { get; set; }
public string Title { get; set; }
public string Description { get; set; }
}
}
Namespace ViewToPdfMVCSample.Models
Public Class Person
Public Property Id() As Integer
Public Property Name() As String
Public Property Title() As String
Public Property Description() As String
End Class
End Namespace
컨트롤러를 어떻게 편집하나요?
컨트롤러에 어떤 코드를 추가해야 할까요?
"Controllers" 폴더로 이동하여 "HomeController" 파일을 엽니다. 다음 코드를 사용하여 "Persons" 액션을 추가합니다.
제공된 코드에서 ChromePdfRenderer 클래스가 먼저 생성됩니다. RenderView 메서드를 사용하려면 HttpContext를 제공하고 "Persons.cshtml" 파일의 경로를 지정하며, 필요한 데이터를 포함한 List<Person>를 제공하십시오. 뷰를 렌더링할 때 RenderingOptions를 사용하여 여백을 사용자 지정하고, 사용자 지정 텍스트와 HTML 머리글 및 바닥글을 추가하고, 결과 PDF 문서에 페이지 번호를 적용할 수 있습니다.
PDF 문서는 다음 코드 File(pdf.BinaryData, "application/pdf", "viewToPdfMVC.pdf")를 사용하여 기기에 다운로드할 수 있습니다.
using IronPdf;
using System.Collections.Generic;
using System.Web.Mvc;
using ViewToPdfMVCSample.Models;
namespace ViewToPdfMVCSample.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
// GET: Person
public ActionResult Persons()
{
// Create a list of Person objects
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (HttpContext.Request.HttpMethod == "POST")
{
// Define the path to the View file
var viewPath = "~/Views/Home/Persons.cshtml";
// Instantiate the ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the view to a PDF document
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
// Set headers to view the PDF in-browser
Response.Headers.Add("Content-Disposition", "inline");
// Return the generated PDF file
return File(pdf.BinaryData, "application/pdf");
}
return View(persons);
}
public ActionResult About()
{
ViewBag.Message = "Your application description page.";
return View();
}
public ActionResult Contact()
{
ViewBag.Message = "Your contact page.";
return View();
}
}
}
using IronPdf;
using System.Collections.Generic;
using System.Web.Mvc;
using ViewToPdfMVCSample.Models;
namespace ViewToPdfMVCSample.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
return View();
}
// GET: Person
public ActionResult Persons()
{
// Create a list of Person objects
var persons = new List<Person>
{
new Person { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
new Person { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
new Person { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
};
if (HttpContext.Request.HttpMethod == "POST")
{
// Define the path to the View file
var viewPath = "~/Views/Home/Persons.cshtml";
// Instantiate the ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the view to a PDF document
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
// Set headers to view the PDF in-browser
Response.Headers.Add("Content-Disposition", "inline");
// Return the generated PDF file
return File(pdf.BinaryData, "application/pdf");
}
return View(persons);
}
public ActionResult About()
{
ViewBag.Message = "Your application description page.";
return View();
}
public ActionResult Contact()
{
ViewBag.Message = "Your contact page.";
return View();
}
}
}
Imports IronPdf
Imports System.Collections.Generic
Imports System.Web.Mvc
Imports ViewToPdfMVCSample.Models
Namespace ViewToPdfMVCSample.Controllers
Public Class HomeController
Inherits Controller
Public Function Index() As ActionResult
Return View()
End Function
' GET: Person
Public Function Persons() As ActionResult
' Create a list of Person objects
'INSTANT VB NOTE: The local variable persons was renamed since Visual Basic will not allow local variables with the same name as their enclosing function or property:
Dim persons_Conflict = New List(Of Person) From {
New Person With {
.Name = "Alice",
.Title = "Mrs.",
.Description = "Software Engineer"
},
New Person With {
.Name = "Bob",
.Title = "Mr.",
.Description = "Software Engineer"
},
New Person With {
.Name = "Charlie",
.Title = "Mr.",
.Description = "Software Engineer"
}
}
If HttpContext.Request.HttpMethod = "POST" Then
' Define the path to the View file
Dim viewPath = "~/Views/Home/Persons.cshtml"
' Instantiate the ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
' Render the view to a PDF document
Dim pdf As PdfDocument = renderer.RenderView(Me.HttpContext, viewPath, persons_Conflict)
' Set headers to view the PDF in-browser
Response.Headers.Add("Content-Disposition", "inline")
' Return the generated PDF file
Return File(pdf.BinaryData, "application/pdf")
End If
Return View(persons_Conflict)
End Function
Public Function About() As ActionResult
ViewBag.Message = "Your application description page."
Return View()
End Function
Public Function Contact() As ActionResult
ViewBag.Message = "Your contact page."
Return View()
End Function
End Class
End Namespace
PDF 렌더링 옵션을 사용자 지정하려면 어떻게 해야 하나요?
보다 고급 시나리오의 경우, 다양한 렌더링 옵션을 사용하여 PDF 출력을 사용자 지정할 수 있습니다. 다음은 사용자 지정 여백, 용지 크기 및 추가 설정을 사용한 예입니다.
// Advanced rendering with custom options
public ActionResult PersonsAdvanced()
{
var persons = GetPersonsList();
if (HttpContext.Request.HttpMethod == "POST")
{
var viewPath = "~/Views/Home/Persons.cshtml";
// Configure the renderer with custom options
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set custom rendering options
renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginBottom = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
// Set custom paper size
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
// Add header and footer
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{pdf-title}";
renderer.RenderingOptions.TextHeader.Font = IronPdf.Font.FontTypes.Helvetica;
renderer.RenderingOptions.TextHeader.FontSize = 12;
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = IronPdf.Font.FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
// Enable JavaScript execution if needed
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.RenderDelay = 500; // Wait for JS to execute
// Render the view to PDF
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
// Optional: Apply compression to reduce file size
pdf.CompressImages(60);
Response.Headers.Add("Content-Disposition", "inline");
return File(pdf.BinaryData, "application/pdf");
}
return View("Persons", persons);
}
// Advanced rendering with custom options
public ActionResult PersonsAdvanced()
{
var persons = GetPersonsList();
if (HttpContext.Request.HttpMethod == "POST")
{
var viewPath = "~/Views/Home/Persons.cshtml";
// Configure the renderer with custom options
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Set custom rendering options
renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginBottom = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
// Set custom paper size
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4;
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait;
// Add header and footer
renderer.RenderingOptions.TextHeader.DrawDividerLine = true;
renderer.RenderingOptions.TextHeader.CenterText = "{pdf-title}";
renderer.RenderingOptions.TextHeader.Font = IronPdf.Font.FontTypes.Helvetica;
renderer.RenderingOptions.TextHeader.FontSize = 12;
renderer.RenderingOptions.TextFooter.DrawDividerLine = true;
renderer.RenderingOptions.TextFooter.Font = IronPdf.Font.FontTypes.Arial;
renderer.RenderingOptions.TextFooter.FontSize = 10;
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}";
// Enable JavaScript execution if needed
renderer.RenderingOptions.EnableJavaScript = true;
renderer.RenderingOptions.RenderDelay = 500; // Wait for JS to execute
// Render the view to PDF
PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
// Optional: Apply compression to reduce file size
pdf.CompressImages(60);
Response.Headers.Add("Content-Disposition", "inline");
return File(pdf.BinaryData, "application/pdf");
}
return View("Persons", persons);
}
Imports System.Web.Mvc
Imports IronPdf
' Advanced rendering with custom options
Public Function PersonsAdvanced() As ActionResult
Dim persons = GetPersonsList()
If HttpContext.Request.HttpMethod = "POST" Then
Dim viewPath = "~/Views/Home/Persons.cshtml"
' Configure the renderer with custom options
Dim renderer As New ChromePdfRenderer()
' Set custom rendering options
renderer.RenderingOptions.MarginTop = 40
renderer.RenderingOptions.MarginBottom = 40
renderer.RenderingOptions.MarginLeft = 20
renderer.RenderingOptions.MarginRight = 20
' Set custom paper size
renderer.RenderingOptions.PaperSize = IronPdf.Rendering.PdfPaperSize.A4
renderer.RenderingOptions.PaperOrientation = IronPdf.Rendering.PdfPaperOrientation.Portrait
' Add header and footer
renderer.RenderingOptions.TextHeader.DrawDividerLine = True
renderer.RenderingOptions.TextHeader.CenterText = "{pdf-title}"
renderer.RenderingOptions.TextHeader.Font = IronPdf.Font.FontTypes.Helvetica
renderer.RenderingOptions.TextHeader.FontSize = 12
renderer.RenderingOptions.TextFooter.DrawDividerLine = True
renderer.RenderingOptions.TextFooter.Font = IronPdf.Font.FontTypes.Arial
renderer.RenderingOptions.TextFooter.FontSize = 10
renderer.RenderingOptions.TextFooter.RightText = "{page} of {total-pages}"
' Enable JavaScript execution if needed
renderer.RenderingOptions.EnableJavaScript = True
renderer.RenderingOptions.RenderDelay = 500 ' Wait for JS to execute
' Render the view to PDF
Dim pdf As PdfDocument = renderer.RenderView(Me.HttpContext, viewPath, persons)
' Optional: Apply compression to reduce file size
pdf.CompressImages(60)
Response.Headers.Add("Content-Disposition", "inline")
Return File(pdf.BinaryData, "application/pdf")
End If
Return View("Persons", persons)
End Function
마진 최적화에 대한 자세한 내용은 '사용자 지정 마진 설정' 가이드를 참조하세요. 특정 용지 크기가 필요한 경우, 맞춤 용지 크기 관련 문서를 참조하십시오.
생성된 PDF 파일로 무엇을 할 수 있나요?
일단 RenderView 메서드를 통해 PdfDocument 객체를 얻으면 다양한 개선 및 조정을 할 수 있습니다. PDF를 PDFA 또는 PDFUA 형식으로 변환하거나, 생성된 PDF에 디지털 서명을 적용하거나, 필요에 따라 PDF 문서를 병합 및 분할할 수 있습니다. 이 라이브러리를 사용하면 PDF 파일의 페이지를 회전하고, 주석 이나 책갈피를 삽입하고, 고유한 워터마크를 적용 할 수 있습니다.
파일 크기 최적화를 위해 PDF 압축 기술 사용을 고려해 보세요. JavaScript 사용량이 많은 콘텐츠를 처리할 때는 JavaScript 렌더링 가이드에서 사용자 지정 렌더링 지연 처리 방법에 대한 자세한 정보를 확인할 수 있습니다. 다양한 내보내기 옵션에 대한 자세한 내용은 PDF 문서 저장 및 내보내기 가이드를 참조하십시오.
뷰를 추가하는 방법은 무엇인가요?
뷰를 생성하려면 어떤 단계를 따라야 하나요?
- 새로 추가된 사용자 작업 항목을 마우스 오른쪽 버튼으로 클릭하고 "보기 추가"를 선택합니다.

- 새 스캐폴딩 항목에 대해 "MVC 5 보기"를 선택하십시오.

- "목록" 템플릿과 "사람" 모델 클래스를 선택하세요.

이렇게 하면 "Persons"라는 이름의 .cshtml 파일이 생성됩니다.
뷰에 인쇄 버튼을 추가하는 방법은 무엇인가요?
- "Views" 폴더 -> "Home" 폴더 -> "Persons.cshtml" 파일로 이동합니다.
"인물 보기" 기능을 실행하는 버튼을 추가하려면 아래 코드를 사용하세요.
@using (Html.BeginForm("Persons", "Home", FormMethod.Post))
{
<input type="submit" value="Print Person" />
}
@using (Html.BeginForm("Persons", "Home", FormMethod.Post))
{
<input type="submit" value="Print Person" />
}
상단 탐색 모음에 섹션을 추가하려면 어떻게 해야 하나요?
내비게이션을 어디에서 업데이트해야 하나요?
- "Views" 폴더에서 "Shared" 폴더로 이동한 다음 "_Layout.cshtml" 파일을 엽니다. "Home" 항목 뒤에 "Person" 탐색 항목을 배치합니다.
ActionLink 메서드의 값이 파일 이름인 "Persons"와 정확히 일치하는지 확인하십시오.
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-dark bg-dark">
<div class="container">
@Html.ActionLink("Application name", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
<button type="button" class="navbar-toggler" data-bs-toggle="collapse" data-bs-target=".navbar-collapse" title="Toggle navigation" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse d-sm-inline-flex justify-content-between">
<ul class="navbar-nav flex-grow-1">
<li>@Html.ActionLink("Home", "Index", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("Persons", "Persons", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("About", "About", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("Contact", "Contact", "Home", new { area = "" }, new { @class = "nav-link" })</li>
</ul>
</div>
</div>
</nav>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-dark bg-dark">
<div class="container">
@Html.ActionLink("Application name", "Index", "Home", new { area = "" }, new { @class = "navbar-brand" })
<button type="button" class="navbar-toggler" data-bs-toggle="collapse" data-bs-target=".navbar-collapse" title="Toggle navigation" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse d-sm-inline-flex justify-content-between">
<ul class="navbar-nav flex-grow-1">
<li>@Html.ActionLink("Home", "Index", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("Persons", "Persons", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("About", "About", "Home", new { area = "" }, new { @class = "nav-link" })</li>
<li>@Html.ActionLink("Contact", "Contact", "Home", new { area = "" }, new { @class = "nav-link" })</li>
</ul>
</div>
</div>
</nav>
프로젝트를 실행하고 테스트하는 방법은 무엇인가요?
프로젝트 실행
이 문서에서는 프로젝트를 실행하고 PDF 문서를 생성하는 방법을 보여줍니다.
PDF 출력
전체 프로젝트는 어디에서 다운로드할 수 있나요?
샘플 프로젝트에는 무엇이 포함되어 있나요?
이 가이드의 전체 코드를 다운로드할 수 있습니다. 다운로드한 파일은 압축 파일 형태로 제공되며, Visual Studio에서 ASP.NET 웹 애플리케이션(.NET Framework) MVC 프로젝트로 열 수 있습니다. 이 샘플에는 MVC 애플리케이션에서 PDF 생성을 빠르게 시작하는 데 필요한 모든 구성, 모델 클래스, 컨트롤러 및 뷰가 포함되어 있습니다.
자주 묻는 질문
ASP.NET MVC에서 CSHTML 뷰를 PDF로 변환하는 방법은 무엇인가요?
IronPDF의 ChromePdfRenderer.RenderView() 메서드를 사용하면 ASP.NET MVC에서 CSHTML 뷰를 PDF로 변환할 수 있습니다. IronPDF.Extensions.Mvc.Framework 패키지를 설치하고 해당 렌더링 메서드를 사용하면 단 몇 줄의 코드로 뷰를 고품질 PDF 문서로 변환할 수 있습니다.
뷰를 PDF로 렌더링하는 데 필요한 최소한의 코드는 무엇입니까?
뷰를 PDF로 렌더링하는 최소한의 코드는 다음과 같습니다. `var pdf = new IronPDF.ChromePdfRenderer.RenderRazorToPdf(this.ControllerContext);` IronPDF를 사용하는 이 한 줄의 코드는 현재 뷰를 PDF 문서로 변환합니다.
ASP.NET MVC에서 PDF를 생성하려면 어떤 확장 패키지가 필요합니까?
ASP.NET MVC 애플리케이션의 경우 IronPDF.Extensions.Mvc.Framework 패키지가 필요합니다. 이 확장 프로그램은 ASP.NET MVC 프로젝트와 원활하게 통합되며, IronPDF 메인 패키지와 함께 작동하여 뷰를 PDF로 변환하는 기능을 제공합니다.
뷰를 PDF로 변환하는 데 사용되는 렌더링 엔진은 무엇입니까?
IronPDF는 Chrome PDF 렌더링 엔진을 사용하여 뷰를 PDF로 변환할 때 픽셀 단위까지 정확한 품질을 보장합니다. 이 엔진은 원본 CSHTML 뷰의 모든 스타일, 레이아웃 및 대화형 요소를 최종 PDF 출력물에서도 그대로 유지합니다.
MVC 뷰에서 송장과 보고서를 생성할 수 있나요?
네, IronPDF는 MVC 뷰에서 송장, 보고서 및 기타 모든 문서를 생성하는 데 매우 적합합니다. 이 라이브러리는 전문적인 PDF 출력 기능을 제공하여 웹 애플리케이션 뷰에서 직접 비즈니스 문서를 생성하는 데 이상적입니다.
뷰를 PDF로 변환하는 기본적인 단계는 무엇인가요?
기본 구현은 다음 5단계로 구성됩니다. 1) IronPDF 라이브러리를 다운로드하고 설치합니다. 2) 데이터를 저장할 모델 클래스를 추가합니다. 3) RenderView 메서드를 사용하여 컨트롤러 액션을 생성합니다. 4) MVC 5 뷰 스캐폴딩을 사용하여 뷰를 추가합니다. 5) IronPDF의 렌더링 메서드를 사용하여 변환을 실행합니다.
PDF 출력 시 원본 보기 스타일이 유지됩니까?
네, IronPDF의 Chrome 렌더링 엔진은 CSHTML 뷰의 모든 CSS 스타일, 레이아웃 및 대화형 요소를 PDF 출력물에 그대로 유지합니다. 이를 통해 픽셀 단위까지 정확한 해상도를 제공하고 원본 웹 뷰의 시각적 완성도를 그대로 유지합니다.

