오늘은 C#을 사용하여 PDF, Word 문서, 스프레드시트, 프레젠테이션을 프로그래밍 방식으로 병합하는 방법을 배웁니다. 이전 게시물에서 Java를 사용한 문서 병합 및 분할을 보았습니다.
이 문서에서는 다음과 관련된 코드 예제도 보여줍니다.
아래의 모든 예에서 GroupDocs.Merger for .NET을 사용할 것입니다. 계속하기 전에 다음 옵션 중 하나에서 API를 얻을 수 있습니다.
C#에서 PDF 파일 병합
다음의 간단한 3줄의 코드는 2개의 PDF 파일을 1개의 PDF 문서로 결합합니다.
- Merger 클래스를 사용하여 첫 번째 문서부터 시작합니다.
- Merger 클래스의 Join 메소드를 호출하고 병합할 두 번째 문서를 전달합니다.
- Save 메소드를 호출하여 결합된 문서를 저장합니다.
// Merge 2 PDF files in C#
using (Merger merger = new Merger(@"document1.pdf"))
{
merger.Join(@"document2.pdf");
merger.Save(@"merged.pdf");
}
Join 메서드에는 스트림 또는 원격 URL을 사용하여 파일 경로를 통해 문서 또는 다른 문서의 선택적 페이지를 병합할 수 있는 여러 오버로드된 메서드가 있습니다.
C#에서 여러 Word 문서 병합
위의 유사한 코드를 사용하면 형식을 잃지 않고 MS Word 및 OpenDocument 형식의 두 개 이상의 파일을 결합할 수 있습니다. 아이디어를 제공하기 위해 .doc, .docx, .docm, .dot, .dotx, .dotm, .rtf, .odt, .ott 등을 병합할 수 있습니다. 아래는 두 개의 MS Word DOCX 파일을 병합하는 3개의 라이너 코드입니다. .
// Merge Word files in C#
using (Merger merger = new Merger(@"c:\\document1.docx"))
{
merger.Join(@"c:\\document2.docx");
merger.Save(@"c:\\merged.docx");
}
여러 파일의 페이지 병합 - C#
전체 문서뿐만 아니라 여러 문서의 일부 페이지를 병합하여 결합된 단일 문서를 얻을 수도 있습니다.
// Merge selective pages
string filePath = @"c:\\sample.docx";
string filePath2 = @"c:\\sample2.docx";
string filePathOut = @"c:\\output\\result.docx";
JoinOptions joinOptions = new JoinOptions(1, 4, RangeMode.OddPages);
using (Merger merger = new Merger(filePath, loadOptions))
{
merger.Join(filePath2, joinOptions);
merger.Save(filePathOut);
}
C#에서 스프레드시트, 프레젠테이션 및 기타 문서 병합
PDF 및 Word와 같은 문서와 함께 프레젠테이션, 스프레드시트 및 기타 여러 형식을 다른 방법 없이 병합할 수 있습니다. 파일 이름을 변경하고 위의 코드에 따라 입력하면 병합된 문서를 얻을 수 있습니다.
using (Merger merger = new Merger(@"filepath1.xxx"))
{
merger.Join(@"filepath2.xxx");
merger.Save(@"xyz.xxx");
}
먼저 파일 형식 지원 확인
요구 사항은 파일 형식이 약간 다를 수 있으므로 필요한 문서가 API에서 병합을 지원하는지 여부를 먼저 아는 것이 좋습니다. 다음 코드는 Merger API에서 지원하는 모든 파일 형식을 가져옵니다.
foreach (FileType fileType in FileType
.GetSupportedFileTypes()
.OrderBy(fileType => fileType.Extension))
{
Console.WriteLine(fileType);
}
다음은 파일 형식을 표시하는 위 코드의 출력입니다.
Bitmap Image File (.bmp)
Comma Separated Values File (.csv)
Excel Binary Spreadsheet (.xlsb)
Excel Macro-Enabled Add-In (.xlam)
Excel Open XML Macro-Enabled Spreadsheet (.xlsm)
Excel Open XML Macro-Enabled Spreadsheet Template (.xltm)
Excel Open XML Spreadsheet (.xlsx)
Excel Open XML Spreadsheet Template (.xltx)
Excel Spreadsheet (.xls)
Excel Template File (.xlt)
Hypertext Markup Language File (.html)
JPEG Image (.jpeg)
LaTeX Source Document (.tex)
MHTML Web Archive (.mht)
MIME HTML File (.mhtml)
OneNote Document (.one)
Open eBook File (.epub)
OpenDocument Document Template (.ott)
OpenDocument Presentation (.odp)
OpenDocument Presentation Template (.otp)
OpenDocument Spreadsheet (.ods)
OpenDocument Text Document (.odt)
Plain Text File (.txt)
Portable Document Format File (.pdf)
Portable Network Graphic (.png)
PostScript File (.ps)
PowerPoint Open XML Presentation (.pptx)
PowerPoint Open XML Slide Show (.ppsx)
PowerPoint Presentation (.ppt)
PowerPoint Slide Show (.pps)
Rich Text Format File (.rtf)
Tab Separated Values File (.tsv)
Visio Drawing (.vsdx)
Visio Drawing Template (.vstx)
Visio Drawing XML File (.vdx)
Visio Macro-Enabled Drawing (.vsdm)
Visio Macro-Enabled Drawing Template (.vstm)
Visio Macro-Enabled Stencil File (.vssm)
Visio Stencil File (.vssx)
Visio Stencil XML File (.vsx)
Visio Template XML File (.vtx)
Word Document (.doc)
Word Document Template (.dot)
Word Open XML Document (.docx)
Word Open XML Document Template (.dotx)
Word Open XML Macro-Enabled Document (.docm)
Word Open XML Macro-Enabled Document Template (.dotm)
XML Paper Specification File (.xps)
.NET 병합 API에 대해 자세히 알아보기
GroupDocs의 .NET Merger API에 대해 자세히 알고 싶으시면 문서를 방문하거나 쿼리에 대해 포럼에 문의하십시오.
감사.