Word에서 PDF로의 변환은 요즘 일반적인 관행이며 문서를 공유하기 전에 선호됩니다. MS Word는 Word 문서를 PDF로 저장하는 내장 기능을 제공하지만 웹 응용 프로그램과 같이 프로그래밍 방식으로 Word 문서를 PDF로 변환하거나 MS Office를 설치하지 않고 Word를 PDF로 일괄 변환해야 하는 경우가 있을 수 있습니다. 따라서 이 기사에서는 .NET 또는 .NET Core 프레임워크에서 C#을 사용하여 Word DOCX 또는 DOC를 PDF로 변환하는 방법을 배웁니다.
Word에서 PDF로 C# 변환 시나리오
이 문서에서는 다음을 수행하는 방법을 배웁니다.
- C#에서 Word DOCX/DOC를 PDF로 변환
- C#에서 Word 문서의 원하는 페이지를 PDF로 변환
- PDF 1.7, PDF/A-1a 등과 같은 특정 PDF 표준을 사용하여 Word에서 PDF로 변환
- C#에서 이미지/텍스트 압축을 사용하여 Word를 PDF로 변환
- C#의 디지털 서명이 있는 DOCX/DOC를 PDF로
- 이미지에 대해 원하는 JPEG 품질로 Word에서 PDF로 변환
C# DOCX/DOC를 PDF로 변환
Aspose.Words for .NET은 널리 사용되는 Word 문서 형식을 만들고 조작하기 위한 강력한 API입니다. API는 또한 높은 정확도로 Word 문서를 PDF로 변환하는 쉬운 방법을 제공합니다. 따라서 C#에서 Word를 PDF로 변환하려면 먼저 프로젝트에 Aspose.Words for .NET DLL에 대한 참조를 추가하거나 다음 방법 중 하나를 사용하여 설치합니다.
NuGet 패키지 관리자 사용
- Visual Studio에서 프로젝트를 생성/엽니다.
- NuGet 패키지 관리자로 이동하여 Aspose.Words를 검색합니다.
- .NET용 Aspose.Words를 설치합니다.
패키지 관리자 콘솔 사용
PM> Install-Package Aspose.Words
간단한 워드(DOCX/DOC)에서 PDF로 C# 변환
Word 문서를 PDF로 변환하려면 Document.Save() 메서드를 호출하고 출력 파일 이름을 “.pdf” 확장자로 지정해야 합니다. 다음 코드 샘플은 C#에서 Word DOC를 PDF로 변환하는 방법을 보여줍니다.
// 디스크에서 문서를 로드합니다.
Document doc = new Document("word.doc");
// PDF로 저장
doc.Save("output.pdf");
워드 문서
변환된 PDF
C#에서 Word DOCX의 선택한 페이지를 PDF로 변환
결과 PDF 문서에서 가져올 페이지 범위를 지정하여 Word에서 PDF로의 변환을 사용자 정의할 수도 있습니다. 처음 N 페이지를 변환하거나 시작 페이지의 인덱스를 지정하는 페이지 범위를 정의할 수 있습니다. 다음 코드 샘플은 C#에서 Word 문서의 두 번째 페이지부터 시작하여 3페이지를 PDF로 변환하는 방법을 보여줍니다.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// 0이 첫 번째 페이지의 인덱스인 인덱스 1부터 3개의 페이지를 변환합니다.
options.PageIndex = 1;
options.PageCount = 3;
// Word를 PDF로 저장
doc.Save("output.pdf", options);
C#의 특정 PDF 표준을 사용하여 Word DOCX/DOC를 PDF로 변환
PDF 문서는 PDF 1.7, PDF 1.5, PDF/A-1a 등과 같은 다양한 PDF 표준을 준수할 수 있습니다. 이에 따라 Aspose.Words for .NET은 Word에서 PDF로 변환할 때 PDF 준수 수준을 지정할 수 있습니다. PdfCompliance 열거형을 사용하여 규정 준수 수준을 지정할 수 있습니다. 다음 코드 샘플은 C#에서 Word DOCX를 PDF로 변환하는 준수 수준을 설정하는 방법을 보여줍니다.
Document doc = new Document("word.docx");
// PDFSaveOption 준수를 PDF17로 설정
PdfSaveOptions options = new PdfSaveOptions();
options.Compliance = PdfCompliance.Pdf17;
// 워드를 PDF로 변환
doc.Save("output.pdf", options);
C#에서 텍스트/이미지 압축을 사용하여 Word를 PDF로 변환
PDF 형식은 문서 크기를 줄이기 위해 텍스트 및 이미지 압축을 지원합니다. PDF 문서는 크기가 커질 수 있으므로 내용을 압축하면 업로드, 공유, 인쇄 등을 쉽게 수행할 수 있습니다. 텍스트 및 이미지 압축은 .NET용 Aspose.Words를 사용하여 Word에서 PDF로 변환하는 데에도 적용할 수 있습니다.
텍스트 압축 옵션
다음 텍스트 압축 옵션은 PdfTextCompression 열거형에서 사용할 수 있습니다.
- 없음: 텍스트 압축 없이 PDF를 저장합니다.
- Flate: 플랫(ZIP) 압축으로 PDF를 저장합니다.
이미지 압축
다음 이미지 압축 옵션은 PdfImageCompression 열거형에서 사용할 수 있습니다.
- 자동: API가 문서의 모든 이미지에 가장 적합한 압축을 자동으로 선택합니다.
- Jpeg: JPEG 이미지로 압축(투명도를 지원하지 않음).
다음 코드 샘플은 C#에서 텍스트 및 이미지 압축을 사용하여 Word DOCX를 PDF로 변환하는 방법을 보여줍니다.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// 텍스트 및 이미지 압축
options.TextCompression = PdfTextCompression.Flate;
options.ImageCompression = PdfImageCompression.Auto;
// Word를 PDF로 저장
doc.Save("output.pdf", options);
디지털 서명을 사용하여 C# Word에서 PDF로 변환
Word에서 PDF로 변환을 수행하는 동안 출력 PDF에 디지털 서명을 적용할 수도 있습니다. CertificateHolder 클래스를 사용하면 디지털 인증서와 암호를 지정할 수 있습니다. PdfDigitalSignatureDetails 클래스를 사용하면 인증서 소유자, 이유, 위치 및 날짜/시간과 같은 디지털 서명의 세부 정보를 제공할 수 있습니다. 다음 코드 샘플은 C#에서 디지털 서명을 사용하여 Word DOC/DOCX를 PDF로 변환하는 방법을 보여줍니다.
Document doc = new Document("word.docx");
PdfSaveOptions options = new PdfSaveOptions();
// 디지털 서명 세부정보
CertificateHolder certHolder = CertificateHolder.Create("signature.pfx", "12345");
options.DigitalSignatureDetails = new PdfDigitalSignatureDetails(certHolder, "reason", "location", DateTime.Now);
// Word를 PDF로 저장
doc.Save("output.pdf", options);
C#에서 원하는 JPEG 품질로 Word를 PDF로 변환
PdfSaveOptions.JpegQuality 속성을 사용하여 변환된 PDF 문서에서 얻고자 하는 원하는 JPEG 품질을 지정할 수도 있습니다. JpegQuality의 값은 0에서 100까지 다양할 수 있습니다. 여기서 0은 품질이 가장 낮지만 최대 압축을 의미하고 100은 품질은 최고지만 압축은 최소를 의미합니다.
다음 코드 샘플은 C#에서 Word DOCX를 PDF로 변환할 때 JPEG 품질을 설정하는 방법을 보여줍니다.
Document doc = new Document("word.docx");
// JPEG 품질 설정
PdfSaveOptions options = new PdfSaveOptions();
options.JpegQuality = 100;
// 워드를 PDF로 변환
doc.Save("output.pdf", options);
결론
이 기사에서는 다양한 옵션과 함께 C#을 사용하여 MS Word DOCX/DOC 문서를 변환하는 방법을 배웠습니다. API에서 제공하는 전체 기능 세트를 보려면 .NET용 Aspose.Words의 문서를 방문하십시오. 질문이나 질문이 있으면 포럼을 통해 문의하십시오.