C#을 사용하여 DOCX 파일을 PDF로 변환하는 방법

How to Convert Microsoft Word to PDF in C#

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

IronPDF를 사용하면 C# 개발자는 DocxToPdfRenderer 클래스를 사용하여 간단한 한 줄 메서드 호출로 DOCX 파일을 PDF 형식으로 변환할 수 있으며, 모든 서식을 유지하고 일괄 문서 생성을 위한 메일 병합 기능을 지원합니다.

DOCX 파일은 마이크로소프트에서 제공하는 마이크로소프트 오피스 제품군에 속하는 워드 프로세싱 프로그램인 마이크로소프트 워드로 만든 문서입니다. 이 프로그램은 Office Open XML(OOXML) 표준을 사용하므로 효율적이고 다양한 소프트웨어와 호환됩니다. Word 2007 버전부터 Word 문서의 기본 형식으로 사용되며, 처음 출시되었을 때 기존의 DOC 형식을 대체했습니다. DOCX 형식은 ZIP 압축을 통한 파일 크기 축소, 향상된 데이터 복구 기능, 다양한 플랫폼과의 호환성 개선 등 여러 가지 장점을 제공합니다.

IronPDF는 Word 문서를 PDF 파일로 즉시 변환할 수 있을 뿐만 아니라, 개별 수신자에게 맞춤형 문서를 일괄적으로 생성할 수 있는 메일 병합 기능도 제공합니다. DOCX 파일을 PDF로 변환하면 범용 호환성이 보장되고 서식이 유지되며 보안이 강화됩니다. 이 기능은 HTML에서 PDF를 생성 하거나 이미지를 PDF로 변환하는 것과 같이, 다양한 장치 및 운영 체제에서 문서의 모양이 그대로 유지되어야 하는 경우 특히 유용합니다.

빠른 시작: IronPDF를 사용하여 DOCX를 PDF로 변환

IronPDF를 사용하면 C#에서 DOCX 파일을 PDF로 손쉽게 변환할 수 있습니다. 이 간편 가이드는 단 한 줄의 코드로 원활한 변환을 위해 DocxToPdfRenderer 클래스와 RenderDocxAsPdf 메서드를 사용하는 방법을 보여줍니다. 문서 처리 과정을 간소화하고 결과 PDF가 모든 원본 서식과 호환성을 유지하도록 보장하려는 개발자에게 적합합니다.

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

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

    PM > Install-Package IronPdf

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

    new IronPdf.DocxToPdfRenderer()
        .RenderDocxAsPdf("document.docx")
        .SaveAs("output.pdf");
  3. 실제 운영 환경에서 테스트할 수 있도록 배포하세요.

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


DOCX 파일을 PDF로 변환하는 방법은 무엇인가요?

IronPDF를 사용하면 개발자는 Word 문서를 PDF로 프로그래밍 방식으로 변환할 수 있어 효율성을 높이고 기존 .NET 애플리케이션이나 다른 플랫폼의 .NET Framework 애플리케이션에 통합할 수 있습니다. 이 라이브러리는 NuGet 패키지를 포함한 다양한 설치 방법을 지원하며 Windows , Linux , macOS를 포함한 여러 플랫폼에 배포할 수 있습니다.

마이크로소프트 워드 파일을 PDF 형식으로 변환하는 과정은 간단합니다. 먼저 DocxToPdfRenderer 클래스를 인스턴스화합니다. DOCX 파일의 파일 경로를 제공하여 DocxToPdfRenderer 객체의 RenderDocxAsPdf 메서드를 활용하십시오. 이 메서드는 PdfDocument 객체를 반환하며, 이를 통해 머리글과 바닥글 추가, 워터마크 적용, 보안 옵션 설정 등 PDF를 추가로 사용자 지정할 수 있습니다. 최신 연대순 이력서 예시 DOCX 파일을 다운로드하실 수 있습니다.

원본 문서는 어떻게 생겼나요?

Microsoft Word에서 최신 약사 이력서를 시간 순서대로 빨간색으로 강조 표시하여 보여줍니다.

C# 코드는 어떻게 작성하나요?

또한, RenderDocxAsPdf 메서드는 DOCX 데이터를 바이트 및 스트림으로 허용합니다. 이러한 유연성을 통해 디스크, 메모리 또는 데이터베이스에서 가져온 문서 등 다양한 소스의 문서를 활용할 수 있습니다. 이 메서드는 모든 복잡한 변환 로직을 내부적으로 처리하여 글꼴, 이미지, 표 및 서식이 정확하게 유지되도록 보장합니다.

: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");
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");
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

보다 고급 시나리오의 경우 바이트 배열이나 스트림에서 변환할 수도 있습니다.

// Convert from byte array
byte[] docxBytes = File.ReadAllBytes("document.docx");
PdfDocument pdfFromBytes = renderer.RenderDocxAsPdf(docxBytes);

// Convert from stream
using (FileStream stream = new FileStream("document.docx", FileMode.Open))
{
    PdfDocument pdfFromStream = renderer.RenderDocxAsPdf(stream);
}
// Convert from byte array
byte[] docxBytes = File.ReadAllBytes("document.docx");
PdfDocument pdfFromBytes = renderer.RenderDocxAsPdf(docxBytes);

// Convert from stream
using (FileStream stream = new FileStream("document.docx", FileMode.Open))
{
    PdfDocument pdfFromStream = renderer.RenderDocxAsPdf(stream);
}
$vbLabelText   $csharpLabel

변환된 PDF 파일은 어떤 모습일까요?

생성된 PDF 파일은 글꼴, 색상, 레이아웃 및 포함된 이미지를 포함하여 모든 원본 서식을 그대로 유지합니다. 이러한 특징 덕분에 IronPDF는 누구나 접근 가능한 형식으로 공유하거나 보관해야 하는 전문 문서를 생성하는 데 이상적입니다.


메일 병합 기능을 사용하여 PDF 파일을 일괄 생성하는 방법은 무엇인가요?

Microsoft Word의 "메일링" 탭에 있는 "메일 병합" 기능을 사용하면 각 수신자 또는 데이터 항목에 맞게 개인화된 정보를 포함하는 문서를 일괄적으로 만들 수 있습니다. 이 기능은 초대장, 뉴스레터 또는 양식 편지와 같이 내용의 대부분은 동일하지만 수신자마다 특정 세부 사항이 다른 개인 맞춤형 편지, 봉투, 라벨 또는 이메일 메시지를 생성하는 데 자주 사용됩니다. 이 기능은 IronPDF의 여러 PDF 병합 기능이나 사용자 지정 메타데이터 가 포함된 문서 생성 기능과 결합될 때 특히 강력한 성능을 발휘합니다.

어떤 데이터 모델을 만들어야 할까요?

먼저, 메일 병합에 사용될 정보를 해당 플레이스홀더에 저장할 모델을 만들어 보겠습니다. 데이터 모델의 속성 이름은 Word 템플릿의 병합 필드 이름과 정확히 일치해야 합니다(대소문자 구분).

:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge-model.cs
internal class RecipientsDataModel
{
    public string Date { get; set; }
    public string Location{ get; set; }
    public string Recipients_Name { get; set; }
    public string Contact_Us { get; set; }
}
internal class RecipientsDataModel
{
    public string Date { get; set; }
    public string Location{ get; set; }
    public string Recipients_Name { get; set; }
    public string Contact_Us { get; set; }
}
internal class RecipientsDataModel
{
    public string Date { get; set; }
    public string Location{ get; set; }
    public string Recipients_Name { get; set; }
    public string Contact_Us { get; set; }
}
$vbLabelText   $csharpLabel

저는 마이크로소프트 워드에서 제공하는 템플릿을 저희 목적에 맞게 수정했습니다. 파티 초대장 DOTX 예제 파일을 다운로드하세요. 우리의 사용 사례에서는 PDF들을 하나의 PdfDocument 객체로 결합하는 MailMergePrintAllInOnePdfDocument 속성을 true로 설정해 보겠습니다. 우리가 사용할 병합 필드는 날짜, 위치, 수신자 이름 및 문의하기입니다.

메일 병합 템플릿은 어떻게 생겼나요?

메일 병합 필드와 메일 병합 도구가 포함된 메일링 리본이 있는 워드 메일 병합 파티 초대 템플릿입니다.

메일 병합 코드를 어떻게 구현하나요?

IronPDF의 메일 병합 기능은 DocxPdfRenderOptions 클래스를 통해 구성할 수 있는 다양한 렌더링 옵션을 지원합니다. 이를 통해 페이지 방향, 여백, 병합된 모든 문서를 단일 PDF로 결합할지 또는 개별 파일로 생성할지 여부와 같은 여러 측면을 제어할 수 있습니다.

:path=/static-assets/pdf/content-code-examples/how-to/docx-to-pdf-mail-merge.cs
using IronPdf;
using System.Collections.Generic;
using System.Linq;

var recipients = new List<RecipientsDataModel>()
    {
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Olivia Smith",
            Contact_Us = "support@ironsoftware.com"
        },
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Ethan Davis",
            Contact_Us = "support@ironsoftware.com"
        },
    };

DocxToPdfRenderer docxToPdfRenderer = new DocxToPdfRenderer();

// Apply render options
DocxPdfRenderOptions options = new DocxPdfRenderOptions();

// Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = true;

// Convert DOTX to PDF
var pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf<RecipientsDataModel>(
     recipients,
     "Party-invitation.dotx",
     options);

pdfs.First().SaveAs("mailMerge.pdf");
using IronPdf;
using System.Collections.Generic;
using System.Linq;

var recipients = new List<RecipientsDataModel>()
    {
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Olivia Smith",
            Contact_Us = "support@ironsoftware.com"
        },
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Ethan Davis",
            Contact_Us = "support@ironsoftware.com"
        },
    };

DocxToPdfRenderer docxToPdfRenderer = new DocxToPdfRenderer();

// Apply render options
DocxPdfRenderOptions options = new DocxPdfRenderOptions();

// Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = true;

// Convert DOTX to PDF
var pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf<RecipientsDataModel>(
     recipients,
     "Party-invitation.dotx",
     options);

pdfs.First().SaveAs("mailMerge.pdf");
using IronPdf;
using System.Collections.Generic;
using System.Linq;

var recipients = new List<RecipientsDataModel>()
    {
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Olivia Smith",
            Contact_Us = "support@ironsoftware.com"
        },
        new RecipientsDataModel()
        {
            Date ="Saturday, October 15th, 2023",
            Location="Iron Software Cafe, Chiang Mai",
            Recipients_Name="Ethan Davis",
            Contact_Us = "support@ironsoftware.com"
        },
    };

DocxToPdfRenderer docxToPdfRenderer = new DocxToPdfRenderer();

// Apply render options
DocxPdfRenderOptions options = new DocxPdfRenderOptions();

// Configure the output PDF to be combined into a single PDF document
options.MailMergePrintAllInOnePdfDocument = true;

// Convert DOTX to PDF
var pdfs = docxToPdfRenderer.RenderDocxMailMergeAsPdf<RecipientsDataModel>(
     recipients,
     "Party-invitation.dotx",
     options);

pdfs.First().SaveAs("mailMerge.pdf");
$vbLabelText   $csharpLabel

최종 병합된 PDF 파일은 어떤 모습인가요?

PDF 문서가 생성되면 추가적인 변경 작업을 자유롭게 수행할 수 있습니다. 여기에는 보관 및 접근성 규정 준수를 위해 PDF/A 또는 PDF/UA 형식으로 내보내는 것과 문서 인증을 위한 디지털 인증서를 추가하는 것이 포함됩니다. PDF 파일을 병합하거나 분할하고 , 페이지를 회전하는 등 의 방법으로 개별 페이지를 조작할 수 있으며, 문서 탐색을 더욱 편리하게 하기 위해 주석책갈피를 추가할 수도 있습니다.

이러한 기능 외에도 IronPDF는 다른 문서 형식으로의 변환도 지원합니다. 예를 들어, 마크다운을 PDF로 변환하거나 , RTF를 PDF로 변환하거나 , 심지어 PDF를 다시 HTML로 내보낼 수도 있습니다. IronPDF가 제공하는 다른 기능에 대한 자세한 내용은 HTML을 PDF로 변환하는 방법에 대한 종합적인 튜토리얼을 참조하십시오.

자주 묻는 질문

C#에서 DOCX 파일을 PDF로 변환하는 방법은 무엇인가요?

IronPDF를 사용하면 DocxToPdfRenderer 클래스를 이용하여 단 한 줄의 코드로 DOCX 파일을 PDF로 변환할 수 있습니다. DocxToPdfRenderer 인스턴스를 생성하고, DOCX 파일 경로를 전달하여 RenderDocxAsPdf 메서드를 호출한 다음, SaveAs 메서드를 사용하여 결과를 저장하면 됩니다.

DocxToPdfRenderer 클래스는 무엇인가요?

DocxToPdfRenderer는 IronPDF에서 Microsoft Word 문서를 PDF 형식으로 변환하기 위해 제공하는 특수 클래스입니다. 이 클래스는 개발자가 모든 원본 서식, 레이아웃 및 문서 속성을 유지하면서 DOCX 파일을 변환할 수 있도록 간단한 API를 제공합니다.

Word 파일을 PDF로 변환할 때 서식이 유지되나요?

네, IronPDF의 DocxToPdfRenderer는 글꼴, 스타일, 이미지, 표, 레이아웃을 포함하여 원본 Word 문서의 모든 서식을 유지하므로 PDF 출력물이 원본 DOCX 파일과 정확히 일치합니다.

DOCX 파일을 PDF로 변환할 때 메일 병합 기능을 사용할 수 있나요?

네, IronPDF는 메일 병합 기능을 지원하여 하나의 DOCX 템플릿에서 여러 수신자에게 맞춤형 PDF 문서를 일괄 생성할 수 있습니다. 이 기능은 일관된 서식을 유지하면서 개별 수신자에게 맞춤형 문서를 만들 때 특히 유용합니다.

DOCX 파일을 PDF 파일로 변환하는 주요 단계는 무엇인가요?

IronPDF를 사용하면 다음 5단계로 간단하게 PDF를 생성할 수 있습니다. 1) C# 라이브러리 다운로드, 2) DOCX 파일 준비, 3) DocxToPdfRenderer 클래스 인스턴스 생성, 4) 파일 경로를 사용하여 RenderDocxAsPdf 메서드 호출, 5) 선택적으로 일괄 처리를 위해 메일 병합 기능 활용.

워드 문서를 PDF 형식으로 변환해야 하는 이유는 무엇입니까?

IronPDF를 사용하여 PDF로 변환하면 모든 장치 및 플랫폼에서 완벽한 호환성을 보장하고, 정확한 서식과 레이아웃을 유지하며, 문서 보안 기능을 추가하고, 원치 않는 편집을 방지합니다. PDF는 뷰어 소프트웨어나 운영 체제에 관계없이 원래 모양을 유지합니다.

DOCX 파일을 PDF로 변환하는 기능은 다양한 플랫폼과 호환되나요?

네, IronPDF는 크로스 플랫폼 배포를 지원하며 Windows, Linux 및 macOS에서 사용할 수 있습니다. 이 라이브러리는 다양한 .NET Framework 애플리케이션과 호환되며 NuGet 패키지를 포함한 여러 설치 방법을 제공합니다.

어떤 유형의 워드 문서를 변환할 수 있나요?

IronPDF는 Microsoft Word 2007 이상 버전에서 Office Open XML(OOXML) 표준을 사용하여 생성된 DOCX 파일을 변환할 수 있습니다. 여기에는 복잡한 서식, 이미지, 표 및 기타 고급 Word 기능을 포함하는 문서가 포함됩니다.

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

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

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

검토자:
제프 프리츠
제프리 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 방금 출시되었습니다