.NET Core에서 PDF 파일을 생성하는 방법

How to Convert HTML to PDF in C# .NET Core

This article was translated from English: Does it need improvement?
Translated
View the article in English

PDF 형식의 엄격한 표준으로 인해 다양한 형식에서 PDF로 변환하는 것은 어려울 수 있습니다. 특히 HTML 및 CSS 스타일링을 다룰 때는 변환 결과가 일대일로 일치하지 않는 경우가 많습니다. 하지만 오늘날의 디지털 환경에서는 HTML과 CSS를 포함한 URL과 양식을 변환하는 기능이 필수적입니다. IronPDF는 바로 이 부분에서 탁월한 성능을 발휘합니다. 직관적인 기능을 제공하여 개발자가 다양한 형식을 높은 정확도로 PDF로 변환할 수 있도록 지원하며, 대부분의 경우 단 몇 줄의 코드만으로 변환이 가능합니다.

IronPDF를 사용하면 HTML, DOCX, RTF, Markdown은 물론 이미지까지 PDF로 손쉽게 변환할 수 있으며, 문서의 무결성을 유지할 수 있습니다. 또한 IronPDF는 Razor, CSHTML, ASPX, XAML과 같은 인기 프레임워크로 작성된 동적 웹 페이지의 변환도 지원하여 호환성 문제를 해결하고 모든 PDF 변환 요구 사항을 충족하는 포괄적인 솔루션이 됩니다.

IronPDF는 간단한 변환 기능 외에도 강력한 사용자 지정 옵션을 제공합니다. 사용자 지정 여백, 머리글 및 바닥글을 설정하여 페이지 번호를 포함하고, 회색조 설정을 조정하여 파일 크기를 줄이는 등 PDF 출력을 맞춤 설정할 수 있습니다. 목차, 자동 페이지 나누기, 원하는 문서 크기에 맞춰 완벽하게 확대/축소되는 콘텐츠와 같은 추가 기능을 통합하여 문서를 더욱 향상시키세요.

이 튜토리얼에서는 이러한 기능들을 비롯한 다양한 기능들을 코드 예제와 함께 살펴보고 IronPDF의 주요 기능들을 강조합니다. IronPDF를 사용하면 PDF 문서를 손쉽게 변환, 맞춤 설정 및 최적화하여 PDF 변환 프로세스를 혁신할 수 있습니다.

빠른 시작: IronPDF로 HTML을 PDF로 변환하기

.NET Core 환경에서 IronPDF를 사용하여 HTML을 PDF로 손쉽게 변환해 보세요. IronPDF의 강력한 API를 사용하면 단 한 줄의 코드로 HTML 문자열에서 픽셀 단위까지 완벽한 PDF를 렌더링할 수 있습니다. 이 가이드에서는 IronPDF를 프로젝트에 빠르게 통합하여 최소한의 설정으로 원활한 PDF 생성을 가능하게 하는 방법을 안내합니다. HTML, URL 또는 Razor 뷰 등 어떤 형식의 파일을 변환하든 IronPDF는 프로세스를 간소화하여 모든 수준의 개발자가 쉽게 사용할 수 있도록 지원합니다. 지금 바로 변환을 시작하고, 준비가 되면 고급 기능을 살펴보세요.

Nuget Icon지금 바로 NuGet을 사용하여 PDF 만들기를 시작하세요.

  1. NuGet 패키지 관리자를 사용하여 IronPDF를 설치하세요.

    PM > Install-Package IronPdf

  2. 다음 코드 조각을 복사하여 실행하세요.

    var pdf = new IronPdf.ChromePdfRenderer().RenderHtmlAsPdf("<h1>Hello, PDF!</h1>");
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

    지금 바로 무료 체험판을 통해 프로젝트에서 IronPDF를 사용해 보세요.
    arrow pointer

목차

다용도 PDF 변환

HTML 문자열에서 PDF로 변환

HTML 문자열을 PDF로 변환하려면 RenderHtmlAsPdf 메서드를 사용하여 HTML 문자열을 픽셀 단위로 정확한 PDF로 빠르게 변환할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/html-string-to-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

HTML에서 PDF로 변환

저희 RenderHtmlAsPdf 방법을 사용하면 HTML 파일을 PDF로 간편하게 변환하고 픽셀 단위까지 완벽한 PDF를 빠르게 저장할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/html-file-to-pdf.cs
using IronPdf;
using IronPdf.Engines.Chrome;
using IronPdf.Rendering;


var renderer = new ChromePdfRenderer
{
    RenderingOptions = new ChromePdfRenderOptions
    {
        CssMediaType = PdfCssMediaType.Print,
        MarginBottom = 0,
        MarginLeft = 0,
        MarginRight = 0,
        MarginTop = 0,
        Timeout = 120,
    },
};
renderer.RenderingOptions.WaitFor.RenderDelay(50);

// Create a PDF from an existing HTML file using C#
var pdf = renderer.RenderHtmlFileAsPdf("example.html");

// Export to a file or Stream
pdf.SaveAs("output.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

URL에서 PDF 가져오기

단 몇 줄의 코드로 URL을 PDF로 빠르게 변환하려면 RenderUrlAsPdf를 사용하세요. URL을 매개변수로 입력하고 간편하게 저장하세요.

:path=/static-assets/pdf/content-code-examples/how-to/url-to-pdf.cs
using IronPdf;

// Instantiate Renderer
var renderer = new ChromePdfRenderer();

// Create a PDF from a URL or local file path
var pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export to a file or Stream
pdf.SaveAs("url.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

이미지를 PDF로 변환

이미지를 PDF 파일로 표시하고 싶으신가요? ImageToPdfConverter 클래스를 사용하여 빠르게 변환하고 ImageToPdf 메서드를 호출하세요.

:path=/static-assets/pdf/content-code-examples/how-to/image-to-pdf-convert-one-image.cs
using IronPdf;

string imagePath = "meetOurTeam.jpg";

// Convert an image to a PDF
PdfDocument pdf = ImageToPdfConverter.ImageToPdf(imagePath);

// Export the PDF
pdf.SaveAs("imageToPdf.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

PDF에서 가져온 이미지

위 예시와 반대로, 먼저 입력을 PDF로 변환한 다음 RasterizeToImageFiles 메서드를 사용하여 PDF를 이미지로 변환할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/rasterize-pdf-to-images-rasterize.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render PDF from web URL
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

// Export images from PDF
pdf.RasterizeToImageFiles("wikipage_*.png");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

DOCX 파일을 PDF로 변환

이력서와 같은 DOCX 파일을 PDF로 간편하게 변환해야 했던 경험이 있으신가요? IronPDF가 도와드리겠습니다. 변환하려면 RenderDocxAsPDF 메서드를 호출하기만 하면 됩니다.

:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-from-file.cs
using IronPdf;

// Instantiate Renderer
DocxToPdfRenderer renderer = new DocxToPdfRenderer();

// Render from DOCX file
PdfDocument pdf = renderer.RenderDocxAsPdf("Modern-chronological-resume.docx");

// Save the PDF
pdf.SaveAs("pdfFromDocx.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

RTF 파일을 PDF로 변환

RTF 파일을 PDF로 변환하려면 RTF 파일을 입력으로 사용하여 RenderRtfFileAsPdf 메서드를 호출합니다.

:path=/static-assets/pdf/content-code-examples/how-to/rtf-to-pdf-from-file.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render from RTF file
PdfDocument pdf = renderer.RenderRtfFileAsPdf("sample.rtf");

// Save the PDF
pdf.SaveAs("pdfFromRtfFile.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

MD 파일을 PDF로 변환

MD 파일을 PDF로 변환하려면 MD 파일을 입력으로 사용하여 RenderMarkdownFileAsPdf 메서드를 호출하면 됩니다.

:path=/static-assets/pdf/content-code-examples/how-to/md-to-pdf-from-file.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Render from markdown file
PdfDocument pdf = renderer.RenderMarkdownFileAsPdf("sample.md");

// Save the PDF
pdf.SaveAs("pdfFromMarkdownFile.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

XML을 PDF로 변환

XML을 PDF로 변환하는 것은 상당히 어려운 작업일 수 있지만, IronPDF는 이러한 어려움을 극복하고 몇 단계만으로 XML을 PDF로 변환할 수 있도록 도와줍니다. 먼저 XLST 템플릿을 사용하여 XLST 변환 과정을 거쳐 XML을 HTML을 통해 PDF로 변환합니다. 시작하는 데 도움이 되도록 코드 조각을 간략하게 정리했습니다.

// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
  text-align: center;
  padding: 20px;
  border: 1px solid #CDE7F0;
}
th{
  color: white;
  padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
  <table style='border-collapse: collapse;'>
    <thead>
      <tr>
        <th colspan='3'>
          <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
        </th>
      </tr>
    </thead>
    <tbody>
      <tr bgcolor='#9acd32'>
        <th bgcolor='#32ab90'>Title</th>
        <th bgcolor='#f49400'>Feature</th>
        <th bgcolor='#2a95d5'>Compatible</th>
      </tr>
      <xsl:for-each select='catalog/cd'>
      <tr>
        <td style='font-weight: bold;'><xsl:value-of select='title'/></td>
        <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
        <td><xsl:value-of select='compatible'/></td>
      </tr>
      </xsl:for-each>
    </tbody>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";

[...]

// Create an instance of XslCompiledTransform
XslCompiledTransform transform = new XslCompiledTransform();

// Load the XSLT from a string
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
    transform.Load(reader);
}

// Transform the XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
    transform.Transform(reader, null, results);
}

// Create a renderer for converting HTML to PDF
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
// Options, headers, and footers may be set here if needed
// Render our XML as a PDF via XSLT transformation
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
// XSLT template that defines the transformation from XML to HTML
string xslt = @"<?xml version='1.0' encoding='UTF-8'?>
<xsl:stylesheet version='1.0' xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>
<xsl:template match='/'>
<html>
<style>
td{
  text-align: center;
  padding: 20px;
  border: 1px solid #CDE7F0;
}
th{
  color: white;
  padding: 20px;
}
</style>
<body style='font-family: Arial, Helvetica Neue, Helvetica, sans-serif;'>
  <table style='border-collapse: collapse;'>
    <thead>
      <tr>
        <th colspan='3'>
          <img style='margin: auto;' src='https://ironsoftware.com/img/svgs/ironsoftware-logo-black.svg'/>
        </th>
      </tr>
    </thead>
    <tbody>
      <tr bgcolor='#9acd32'>
        <th bgcolor='#32ab90'>Title</th>
        <th bgcolor='#f49400'>Feature</th>
        <th bgcolor='#2a95d5'>Compatible</th>
      </tr>
      <xsl:for-each select='catalog/cd'>
      <tr>
        <td style='font-weight: bold;'><xsl:value-of select='title'/></td>
        <td style='background-color: #eff8fb; color: #2a95d5; font-weight: bold;'><xsl:value-of select='feature'/></td>
        <td><xsl:value-of select='compatible'/></td>
      </tr>
      </xsl:for-each>
    </tbody>
  </table>
</body>
</html>
</xsl:template>
</xsl:stylesheet>
";

[...]

// Create an instance of XslCompiledTransform
XslCompiledTransform transform = new XslCompiledTransform();

// Load the XSLT from a string
using (XmlReader reader = XmlReader.Create(new StringReader(xslt)))
{
    transform.Load(reader);
}

// Transform the XML to HTML
StringWriter results = new StringWriter();
using (XmlReader reader = XmlReader.Create(new StringReader(xml)))
{
    transform.Transform(reader, null, results);
}

// Create a renderer for converting HTML to PDF
IronPdf.ChromePdfRenderer renderer = new IronPdf.ChromePdfRenderer();
// Options, headers, and footers may be set here if needed
// Render our XML as a PDF via XSLT transformation
renderer.RenderHtmlAsPdf(results.ToString()).SaveAs("Final.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

PDF를 HTML로 변환

IronPDF는 다양한 형식의 파일을 PDF로 변환하는 것 외에도 PDF를 HTML로 변환하는 역변환 작업도 지원합니다. 다음은 해당 기능을 보여주는 간단한 코드 조각입니다.

:path=/static-assets/pdf/content-code-examples/how-to/pdf-to-html.cs
using IronPdf;
using System;

PdfDocument pdf = PdfDocument.FromFile("sample.pdf");

// Convert PDF to HTML string
string html = pdf.ToHtmlString();
Console.WriteLine(html);

// Convert PDF to HTML file
pdf.SaveAsHtml("myHtml.html");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

동적 웹 페이지를 PDF로 변환

동적 웹 페이지를 레이아웃과 서식을 그대로 유지하면서 PDF로 변환해야 합니까? 다양한 인기 동적 웹 페이지 프레임워크를 PDF로 빠르게 변환해주는 IronPDF를 사용해 보세요.

ASPX Pages에서 PDF로 변환

다음은 Active Server Pages에서 ASPX 페이지를 PDF로 변환하는 간단한 코드 예시입니다.

:path=/static-assets/pdf/content-code-examples/how-to/aspx-to-pdf-2.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using IronPdf;

namespace AspxToPdfTutorial
{
    public partial class Invoice : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            IronPdf.AspxToPdf.RenderThisPageAsPdf(IronPdf.AspxToPdf.FileBehavior.InBrowser);
        }
    }
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

XAML을 PDF로 변환(MAUI)

크로스 플랫폼 애플리케이션 개발을 원하는 개발자들에게 .NET MAUI는 프레임워크 중에서 인기 있는 선택지입니다. IronPDF는 몇 가지 단계를 거치면 XAML을 PDF로 완벽하게 변환할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/xaml-to-pdf-maui-mainpage-xaml-cs.cs
using IronPdf.Extensions.Maui;

namespace mauiSample;

public partial class MainPage : ContentPage
{
    public MainPage()
    {
        InitializeComponent();
    }

    private void PrintToPdf(object sender, EventArgs e)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Apply HTML header
        renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter()
        {
            HtmlFragment = "<h1>Header</h1>",
        };

        // Render PDF from Maui Page
        PdfDocument pdf = renderer.RenderContentPageToPdf<MainPage, App>().Result;

        pdf.SaveAs(@"C:\Users\lyty1\Downloads\contentPageToPdf.pdf");
    }
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

PDF 보고서 생성

PDF 보고서를 생성할 때는 정확한 크기와 형식이 매우 중요합니다. 이처럼 IronPDF를 사용하면 단 몇 단계만으로 PDF를 원활하게 생성할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/csharp-pdf-reports-render-html-file.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderHtmlFileAsPdf("report.html").SaveAs("report.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

Blazor 서버에서 PDF 생성하기

IronPDF는 .NET 6을 지원하며 Blazor와 같은 프로젝트 유형을 포함하고 있으므로, 이 코드 스니펫은 Blazor 서버에서 PDF를 생성하는 간단한 예제를 제공합니다.

@code {

    // Model to bind user input
    private InputHTMLModel _InputMsgModel = new InputHTMLModel();

    private async Task SubmitHTML()
    {
        // Set your IronPDF license key
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

        // Create a renderer to convert HTML to PDF
        var render = new IronPdf.ChromePdfRenderer();

        // Render the HTML input into a PDF document
        var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);

        var fileName = "iron.pdf";

        // Create a stream reference for the PDF content
        using var streamRef = new DotNetStreamReference(stream: doc.Stream);

        // Invoke JavaScript function to download the PDF in the browser
        await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
    }

    public class InputHTMLModel
    {
        public string HTML { get; set; } = "My new message";
    }
}
@code {

    // Model to bind user input
    private InputHTMLModel _InputMsgModel = new InputHTMLModel();

    private async Task SubmitHTML()
    {
        // Set your IronPDF license key
        IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

        // Create a renderer to convert HTML to PDF
        var render = new IronPdf.ChromePdfRenderer();

        // Render the HTML input into a PDF document
        var doc = render.RenderHtmlAsPdf(_InputMsgModel.HTML);

        var fileName = "iron.pdf";

        // Create a stream reference for the PDF content
        using var streamRef = new DotNetStreamReference(stream: doc.Stream);

        // Invoke JavaScript function to download the PDF in the browser
        await JS.InvokeVoidAsync("SubmitHTML", fileName, streamRef);
    }

    public class InputHTMLModel
    {
        public string HTML { get; set; } = "My new message";
    }
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

Razor에서 PDF로 변환 (Blazor 서버)

IronPDF는 Blazor 서버에서 PDF를 생성하는 것 외에도 Blazor 페이지 내의 Razor 컴포넌트에서 PDF 문서를 생성하는 것도 지원합니다. PDF 파일 및 페이지 생성 과정을 훨씬 간소화합니다.

[Parameter]
public IEnumerable<PersonInfo> persons { get; set; }
public Dictionary<string, object> Parameters { get; set; } = new Dictionary<string, object>();

protected override async Task OnInitializedAsync()
{
    persons = new List<PersonInfo>
    {
        new PersonInfo { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
        new PersonInfo { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
        new PersonInfo { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
    };
}
private async void PrintToPdf()
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Apply text footer
    renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            LeftText = "{date} - {time}",
            DrawDividerLine = true,
            RightText = "Page {page} of {total-pages}",
            Font = IronSoftware.Drawing.FontTypes.Arial,
            FontSize = 11
        };

    Parameters.Add("persons", persons);

    // Render razor component to PDF
    PdfDocument pdf = renderer.RenderRazorComponentToPdf<Person>(Parameters);

    File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData);
}
[Parameter]
public IEnumerable<PersonInfo> persons { get; set; }
public Dictionary<string, object> Parameters { get; set; } = new Dictionary<string, object>();

protected override async Task OnInitializedAsync()
{
    persons = new List<PersonInfo>
    {
        new PersonInfo { Name = "Alice", Title = "Mrs.", Description = "Software Engineer" },
        new PersonInfo { Name = "Bob", Title = "Mr.", Description = "Software Engineer" },
        new PersonInfo { Name = "Charlie", Title = "Mr.", Description = "Software Engineer" }
    };
}
private async void PrintToPdf()
{
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Apply text footer
    renderer.RenderingOptions.TextFooter = new TextHeaderFooter()
        {
            LeftText = "{date} - {time}",
            DrawDividerLine = true,
            RightText = "Page {page} of {total-pages}",
            Font = IronSoftware.Drawing.FontTypes.Arial,
            FontSize = 11
        };

    Parameters.Add("persons", persons);

    // Render razor component to PDF
    PdfDocument pdf = renderer.RenderRazorComponentToPdf<Person>(Parameters);

    File.WriteAllBytes("razorComponentToPdf.pdf", pdf.BinaryData);
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

CSHTML을 PDF로 변환

CSHTML(Razor)을 PDF로 변환하면 웹 애플리케이션에서 바로 전문적인 인쇄용 문서를 생성할 수 있습니다. 이 기능은 송장, 보고서, 계약서 또는 기타 동적 콘텐츠에 유용합니다. IronPDF는 Razor Pages, MVC Core, MVC Framework는 물론 헤드리스 렌더링도 지원하므로 단 몇 줄의 코드로 PDF 생성을 .NET 애플리케이션에 원활하게 통합할 수 있습니다.

CSHTML을 PDF로 변환(Razor 페이지)

using IronPdf.Razor.Pages;

public IActionResult OnPostAsync()
{
    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" }
    };

    ViewData["personList"] = persons;

    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render Razor Page to PDF document
    PdfDocument pdf = renderer.RenderRazorToPdf(this);

    Response.Headers.Add("Content-Disposition", "inline");

    return File(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf");
}
using IronPdf.Razor.Pages;

public IActionResult OnPostAsync()
{
    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" }
    };

    ViewData["personList"] = persons;

    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render Razor Page to PDF document
    PdfDocument pdf = renderer.RenderRazorToPdf(this);

    Response.Headers.Add("Content-Disposition", "inline");

    return File(pdf.BinaryData, "application/pdf", "razorPageToPdf.pdf");
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

CSHTML을 PDF로 변환(MVC 코어)

public async Task<IActionResult> Persons()
{
    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 (_httpContextAccessor.HttpContext.Request.Method == HttpMethod.Post.Method)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render View to PDF document
        PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons);
        Response.Headers.Add("Content-Disposition", "inline");

        // Output PDF document
        return File(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf");
    }
    return View(persons);
}
public async Task<IActionResult> Persons()
{
    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 (_httpContextAccessor.HttpContext.Request.Method == HttpMethod.Post.Method)
    {
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render View to PDF document
        PdfDocument pdf = renderer.RenderRazorViewToPdf(_viewRenderService, "Views/Home/Persons.cshtml", persons);
        Response.Headers.Add("Content-Disposition", "inline");

        // Output PDF document
        return File(pdf.BinaryData, "application/pdf", "viewToPdfMVCCore.pdf");
    }
    return View(persons);
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

CSHTML을 PDF로 변환(MVC 프레임워크)

public ActionResult Persons()
{
    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")
    {
        // Provide the path to your view file
        var viewPath = "~/Views/Home/Persons.cshtml";
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render Razor view to PDF document
        PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
        Response.Headers.Add("Content-Disposition", "inline");

        // View the PDF
        return File(pdf.BinaryData, "application/pdf");
    }
    return View(persons);
}
public ActionResult Persons()
{
    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")
    {
        // Provide the path to your view file
        var viewPath = "~/Views/Home/Persons.cshtml";
        ChromePdfRenderer renderer = new ChromePdfRenderer();

        // Render Razor view to PDF document
        PdfDocument pdf = renderer.RenderView(this.HttpContext, viewPath, persons);
        Response.Headers.Add("Content-Disposition", "inline");

        // View the PDF
        return File(pdf.BinaryData, "application/pdf");
    }
    return View(persons);
}
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

CSHTML을 PDF로 변환(헤드리스 방식)

app.MapGet("/PrintPdf", async () =>
{
    // Set your IronPDF license key
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Enable detailed logging for troubleshooting
    IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;

    // Render the Razor view to an HTML string
    string html = await RazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml");

    // Create a new instance of ChromePdfRenderer 
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render the HTML string as a PDF document
    PdfDocument pdf = renderer.RenderHtmlAsPdf(html, "./wwwroot");

    // Return the PDF file as a response
    return Results.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf");
});
app.MapGet("/PrintPdf", async () =>
{
    // Set your IronPDF license key
    IronPdf.License.LicenseKey = "IRONPDF-MYLICENSE-KEY-1EF01";

    // Enable detailed logging for troubleshooting
    IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;

    // Render the Razor view to an HTML string
    string html = await RazorTemplateEngine.RenderAsync("Views/Home/Data.cshtml");

    // Create a new instance of ChromePdfRenderer 
    ChromePdfRenderer renderer = new ChromePdfRenderer();

    // Render the HTML string as a PDF document
    PdfDocument pdf = renderer.RenderHtmlAsPdf(html, "./wwwroot");

    // Return the PDF file as a response
    return Results.File(pdf.BinaryData, "application/pdf", "razorViewToPdf.pdf");
});
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

웹 접근성

TLS 웹사이트 및 시스템 로그인

IronPDF는 인증이 필요한 웹 페이지를 변환하는 간편한 솔루션을 제공합니다. 렌더링 옵션을 사용하면 사용자는 ChromeHttpLoginCredntials 속성을 이용하여 사용자 이름과 비밀번호를 우회할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/logins-username-password.cs
using IronPdf;
using System;

ChromePdfRenderer renderer = new ChromePdfRenderer
{
    // setting login credentials to bypass basic authentication
    LoginCredentials = new ChromeHttpLoginCredentials()
    {
        NetworkUsername = "testUser",
        NetworkPassword = "testPassword"
    }
};

var uri = new Uri("http://localhost:51169/Invoice");

// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf(uri);

// Export PDF
pdf.SaveAs("UrlToPdfExample.Pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

쿠키

추가 로그인 요청에 쿠키를 적용하여 세션이 저장되도록 하세요! 이렇게 하면 IronPDF 내에서 잠긴 도메인 내의 추가 리소스를 더 쉽게 렌더링할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/cookies-apply-cookies.cs
using IronPdf;

// Instantiate ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.RequestContext = IronPdf.Rendering.RequestContexts.Global;

ChromeHttpLoginCredentials credentials = new ChromeHttpLoginCredentials() {
    NetworkUsername = "testUser",
    NetworkPassword = "testPassword"
};

string uri = "http://localhost:51169/Invoice";

// Apply cookies
renderer.ApplyCookies(uri, credentials);
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

HTTP 요청 헤더

쿠키 외에도 IronPDF는 사용자가 인증 토큰 및 기타 일반적인 관련 필드를 사용하여 HTTP 요청 헤더를 사용자 지정할 수 있도록 합니다.

:path=/static-assets/pdf/content-code-examples/how-to/http-request-header.cs
using IronPdf;
using System.Collections.Generic;

var renderer = new ChromePdfRenderer();
renderer.RenderingOptions.HttpRequestHeaders = new Dictionary<string, string>
{
    { "Authorization", "Bearer test-token-123" }
};

// Render PDF from authenticated page
var pdf = renderer.RenderUrlAsPdf("https://httpbin.org/bearer");
pdf.SaveAs("output.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

PDF 변환을 맞춤 설정하세요

렌더링 옵션

IronPDF를 사용하면 사용자가 생성된 PDF의 모양과 형식을 사용자 지정할 수 있습니다. 다양한 입력을 PDF로 변환하는 데 사용되는 ChromePdfRender 클래스에는 사용자가 출력 모양을 제어할 수 있도록 하는 RenderingOptions 속성도 포함되어 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/rendering-options-render.cs
using IronPdf;

// Instantiate a ChromePdfRenderer object, which uses a headless version of the Chrome browser
// to render HTML/CSS as a PDF document.
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure rendering options
// Enable printing of HTML backgrounds to ensure all styles are visible.
renderer.RenderingOptions.PrintHtmlBackgrounds = true;

// Set HTML header content using HtmlHeaderFooter.
renderer.RenderingOptions.HtmlHeader = new HtmlHeaderFooter
{
    // HTML fragment to add a header at the top of every page in the PDF.
    HtmlFragment = "<h1>Header Content</h1>"
};

// Set a custom paper size for the PDF in millimeters (width and height).
renderer.RenderingOptions.SetCustomPaperSizeinMilimeters(150, 150);

// Set the top margin to zero to start the content from the very top of the page.
renderer.RenderingOptions.MarginTop = 0;

// Define a Markdown string that will be rendered as a PDF.
// Markdown text allows basic formatting like bold and italic styles.
string md = "This is some **bold** and *italic* text.";

// Render the Markdown string to a PDF document.
// The library will convert Markdown syntax into equivalent HTML before rendering it as a PDF.
PdfDocument pdf = renderer.RenderMarkdownStringAsPdf(md);

// Save the generated PDF to a file named "renderingOptions.pdf."
pdf.SaveAs("renderingOptions.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

사용자 지정 여백 설정

여백을 조정하여 출력 PDF의 모양을 더욱 세밀하게 맞춤 설정할 수 있으며, 이를 통해 레이아웃과 간격을 정확하게 제어할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/custom-margins-set-margins.cs
ChromePdfRenderer renderer = new ChromePdfRenderer();

renderer.RenderingOptions.MarginTop = 40;
renderer.RenderingOptions.MarginLeft = 20;
renderer.RenderingOptions.MarginRight = 20;
renderer.RenderingOptions.MarginBottom = 40;
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

회색조

회색조 PDF를 생성하려면 RenderingOptions 내의 GrayScale 속성을 true로 설정합니다.

:path=/static-assets/pdf/content-code-examples/how-to/color-grayscale-grayscale.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Set GrayScale to true
renderer.RenderingOptions.GrayScale = true;

PdfDocument pdf = renderer.RenderUrlAsPdf("https://ironsoftware.com/");
pdf.CopyPage(0).SaveAs("test.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

PDF 레이아웃을 다듬으세요

목차를 추가하세요

IronPDF를 사용하여 독자가 문서를 쉽게 탐색할 수 있도록 동적인 목차를 만드세요. IronPDF는 h1h2와 같은 헤더에 대한 하이퍼링크를 사용하여 목차를 자동으로 처리합니다. 그뿐만 아니라 HTML과 CSS 스타일링을 사용하여 목차의 스타일을 사용자 지정할 수도 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/table-of-contents.cs
using IronPdf;

// Instantiate Renderer
ChromePdfRenderer renderer = new ChromePdfRenderer();

// Configure render options
renderer.RenderingOptions = new ChromePdfRenderOptions
{
    // Enable table of content feature
    TableOfContents = TableOfContentsTypes.WithPageNumbers,
};

PdfDocument pdf = renderer.RenderHtmlFileAsPdf("tableOfContent.html");

pdf.SaveAs("tableOfContents.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

페이지 나누기

각 섹션 사이에 페이지 나누기를 추가하여 내용을 명확하게 구분하고 문서의 가독성을 높이세요. IronPDF에서는 HTML div style= page-break-after를 사용하면 간단하게 해당 효과를 얻을 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/html-to-pdf-page-breaks-page-break.cs
using IronPdf;

const string html = @"
  <table style='border: 1px solid #000000'>
    <tr>
      <th>Company</th>
      <th>Product</th>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronPDF</td>
    </tr>
    <tr>
      <td>Iron Software</td>
      <td>IronOCR</td>
    </tr>
  </table>

  <div style='page-break-after: always;'> </div>

  <img src='https://ironpdf.com/img/products/ironpdf-logo-text-dotnet.svg'>";

var renderer = new ChromePdfRenderer();

var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("Page_Break.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

페이지에 맞추기 및 확대/축소

지정된 용지 크기에 맞게 콘텐츠 크기를 조정하는 데 도움이 필요하신가요? IronPDF는 Google Chrome의 인쇄 미리보기에서 콘텐츠를 페이지에 맞게 확대/축소하는 방식을 모방한 UseChromeDefault 기능을 제공합니다.

:path=/static-assets/pdf/content-code-examples/how-to/viewport-zoom-default-chrome.cs
using IronPdf;

ChromePdfRenderer renderer = new ChromePdfRenderer();

// Chrome default rendering
renderer.RenderingOptions.PaperFit.UseChromeDefaultRendering();

// Render web URL to PDF
PdfDocument pdf = renderer.RenderUrlAsPdf("https://en.wikipedia.org/wiki/Main_Page");

pdf.SaveAs("chromeDefault.pdf");
$vbLabelText   $csharpLabel

이 코드 조각에 대한 더 자세한 설명과 추가 기능을 살펴보려면 종합적인 사용 설명서 를 참조하십시오.

결론

위 예시들은 IronPDF를 사용하여 다양한 형식을 PDF로 변환할 때 활용할 수 있는 놀라운 기능과 뛰어난 특징들을 보여줍니다.

새로운 기능 요청이나 IronPDF 또는 라이선스 관련 일반적인 질문이 있으시면 지원팀에 문의해 주세요. 기꺼이 도와드리겠습니다.

자주 묻는 질문

.NET Core에서 HTML을 PDF로 변환하는 방법은 무엇인가요?

.NET Core에서 HTML을 PDF로 변환하려면 IronPDF 라이브러리를 사용하세요. 먼저 NuGet을 통해 패키지를 설치합니다. 그런 다음 `ChromePdfRenderer` 인스턴스를 생성하고 `RenderHtmlAsPdf` 메서드를 사용하여 HTML 문자열을 PDF 형식으로 변환합니다.

라이브 URL을 PDF 문서로 변환하려면 어떻게 해야 하나요?

IronPDF를 사용하여 웹페이지 URL을 PDF 문서로 변환하려면 NuGet에서 라이브러리를 설치하고, `ChromePdfRenderer` 인스턴스를 생성한 다음, 변환하려는 웹페이지 URL을 사용하여 `RenderUrlAsPdf` 메서드를 호출하면 됩니다.

Razor 뷰를 PDF로 변환하는 단계는 무엇인가요?

Razor 뷰를 PDF로 변환하려면 뷰를 HTML 문자열로 렌더링한 다음 IronPDF의 `RenderHtmlAsPdf` 메서드에 전달합니다. 이렇게 하면 완전한 데이터 바인딩을 통해 MVC 뷰에서 동적 PDF를 생성할 수 있습니다.

기존 PDF 파일을 수정할 수 있나요?

예, IronPDF를 사용하여 기존 PDF 파일을 수정할 수 있습니다. `PdfDocument.FromFile` 함수를 사용하여 PDF 파일을 불러온 다음, 병합, 머리글/바닥글 추가 또는 보안 설정 변경과 같은 수정 작업을 적용할 수 있습니다.

PDF를 렌더링하는 데 사용할 수 있는 옵션은 무엇입니까?

IronPDF는 `ChromePdfRenderOptions` 통해 다양한 렌더링 옵션을 제공합니다. 용지 크기, 방향, 여백 등을 사용자 지정하여 PDF가 특정 레이아웃 및 스타일 요구 사항을 충족하도록 할 수 있습니다.

Docker 환경에 PDF 파일을 배포하는 방법은 무엇인가요?

Dockerfile 내에서 Linux 종속성을 구성하여 Docker 환경에 PDF를 배포하세요. 컨테이너화된 애플리케이션에서 종속성을 자동으로 처리하려면 IronPDF의 `IronPdf.Installation.LinuxAndDockerDependenciesAutoConfig` 사용하십시오.

PDF 파일에 디지털 서명을 추가하는 것이 가능할까요?

예, `PdfSignature` 클래스를 사용하여 PDF 파일에 디지털 서명을 추가할 수 있습니다. `Sign` 메서드와 인증서 파일을 활용하면 문서의 진위성과 무결성을 보장할 수 있습니다.

IronPDF는 PDF에 대해 어떤 보안 기능을 제공하나요?

IronPDF는 암호 보호, 암호화 및 액세스 제어를 포함한 강력한 보안 기능을 제공합니다. 보기, 인쇄 및 편집 권한을 관리하려면 `SecuritySettings` 속성을 통해 이러한 기능을 설정하십시오.

PDF 문서에서 텍스트와 이미지를 추출하는 방법은 무엇인가요?

IronPDF의 `ExtractAllText` 및 `ExtractAllImages` 메서드를 사용하면 PDF 문서에서 텍스트와 이미지를 추출할 수 있습니다. 이러한 메서드를 사용하면 전체 문서 또는 특정 페이지에서 데이터를 처리할 수 있습니다.

PDF 파일에 워터마크를 적용하는 방법은 무엇인가요?

IronPDF의 `Watermark` 속성과 `HtmlStamp` 객체를 사용하면 PDF 파일에 워터마크를 적용할 수 있습니다. 더 고급 기능을 사용하려면 `HtmlStamper` 클래스를 통해 스타일을 사용자 지정할 수 있는 HTML 기반 스탬프를 만들 수 있습니다.

IronPDF는 .NET 10과 호환되나요? .NET 10 프로젝트에서 IronPDF를 사용하려면 어떻게 해야 하나요?

네, IronPDF는 크로스 플랫폼 최신 .NET 버전 지원의 일환으로 .NET 10을 완벽하게 지원합니다. .NET 10 프로젝트에서 IronPDF를 사용하려면 `IronPdf` NuGet 패키지를 설치하고, 프로젝트 파일에서 `net10.0` 대상으로 지정하여 해당 패키지를 참조한 다음, 이전 .NET 버전에서와 마찬가지로 `ChromePdfRenderer` 와 같은 클래스와 `RenderHtmlAsPdf` 와 같은 메서드를 사용하면 됩니다. .NET 10은 PDF 렌더링 및 조작 시 향상된 성능, 메모리 사용량 절감, 런타임 개선 등의 이점을 제공합니다.

제이콥 멜러, 팀 아이언 최고기술책임자
최고기술책임자

제이콥 멜러는 Iron Software의 최고 기술 책임자(CTO)이자 C# PDF 기술을 개척한 선구적인 엔지니어입니다. Iron Software의 핵심 코드베이스를 최초로 개발한 그는 창립 초기부터 회사의 제품 아키텍처를 설계해 왔으며, CEO인 캐머런 리밍턴과 함께 회사를 NASA, 테슬라, 그리고 전 세계 정부 기관에 서비스를 제공하는 50명 이상의 직원을 보유한 기업으로 성장시켰습니다.

제이콥은 맨체스터 대학교에서 토목공학 학사 학위(BEng)를 최우등으로 취득했습니다(1998~2001). 1999년 런던에서 첫 소프트웨어 회사를 설립하고 2005년 첫 .NET 컴포넌트를 개발한 후, 마이크로소프트 생태계 전반에 걸쳐 복잡한 문제를 해결하는 데 전문성을 발휘해 왔습니다.

그의 대표 제품인 IronPDF 및 Iron Suite .NET 라이브러리는 전 세계적으로 3천만 건 이상의 NuGet 설치 수를 기록했으며, 그의 핵심 코드는 전 세계 개발자들이 사용하는 다양한 도구에 지속적으로 활용되고 있습니다. 25년의 실무 경험과 41년의 코딩 전문성을 바탕으로, 제이콥은 차세대 기술 리더들을 양성하는 동시에 기업 수준의 C#, Java, Python PDF 기술 혁신을 주도하는 데 주력하고 있습니다.

검토자:
제프 프리츠
제프리 T. 프리츠
.NET 커뮤니티 팀의 수석 프로그램 관리자
제프는 .NET 및 Visual Studio 팀의 수석 프로그램 관리자이기도 합니다. 그는 .NET Conf 가상 컨퍼런스 시리즈의 총괄 프로듀서이며, 개발자를 위한 라이브 스트림 'Fritz and Friends'를 주 2회 진행하며 시청자들과 함께 기술에 대해 이야기하고 코드를 작성합니다. 제프는 Microsoft Build, Microsoft Ignite, .NET Conf, Microsoft MVP Summit 등 주요 Microsoft 개발자 행사를 위한 워크숍, 프레젠테이션 및 콘텐츠 기획을 담당합니다.
시작할 준비 되셨나요?
Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다