GroupDocs.Merger for .NET을 사용하여 Excel에 PDF 삽입하는 방법

소개

Excel에 PDF를 삽입하면 계약서, 보고서, 사양서와 같은 지원 문서를 데이터가 있는 바로 그 위치에 보관할 수 있습니다. GroupDocs.Merger for .NET을 사용하면 몇 줄의 코드만으로 셀에 OLE 객체를 추가하여 일반 스프레드시트를 인터랙티브하고 자체 포함된 워크북으로 변환할 수 있습니다. 이 튜토리얼은 설치부터 문제 해결까지 알아야 할 모든 내용을 단계별로 안내합니다.

배우게 될 내용

  • C# 프로젝트에 GroupDocs.Merger for .NET을 설정하는 방법
  • Excel 셀에 PDF(또는 OLE 호환 파일)를 삽입하는 정확한 단계
  • 구성 옵션, 성능 팁 및 흔히 발생하는 함정

시작하기 전에 모든 준비가 완료되었는지 확인해 보겠습니다.

빠른 답변

  • 모든 파일 형식을 삽입할 수 있나요? 예—OLE 객체로 지원되는 모든 형식(PDF, Word, 이미지 등)입니다.
  • 개발용 라이선스가 필요합니까? 무료 체험판으로 테스트할 수 있으며, 운영 환경에서는 정식 라이선스가 필요합니다.
  • 지원되는 .NET 버전은 무엇인가요? .NET Framework 4.5+, .NET Core 3.1+, .NET 5/6/7+.
  • Excel 파일 크기가 크게 증가하나요? 삽입된 문서 크기만큼만 증가합니다; 최상의 성능을 위해 몇 MB 이하로 유지하세요.
  • OLE 객체 수에 제한이 있나요? 실질적인 제한은 없지만, 매우 큰 워크북은 로드 시간에 영향을 줄 수 있습니다.

Excel에 PDF를 삽입하는 것이란?

Excel에 PDF를 삽입하면 전체 PDF가 OLE 객체로 포함되어 스프레드시트에서 바로 열 수 있습니다. 사용자는 아이콘을 클릭해 Excel을 떠나지 않고 원본 문서를 확인할 수 있습니다. 이 방식은 원본 레이아웃을 보존하고 빠른 참조를 가능하게 하며 별도 파일 관리가 필요 없게 합니다. 삽입된 PDF는 다른 OLE 객체와 동일하게 동작하여 아이콘을 더블클릭하면 PDF 뷰어가 실행됩니다.

왜 Excel에 OLE 객체를 삽입하나요?

GroupDocs.Merger는 120개 이상의 입력 및 출력 형식을 지원하며 전체 파일을 메모리로 로드하지 않고 객체를 삽입할 수 있어 수백 페이지 PDF도 빠르게 처리합니다. 이를 통해 별도의 파일 저장소가 필요 없어지고 관련 데이터가 함께 보관됩니다. 또한 버전 관리가 간소화되고 모든 문서가 워크북에 포함되어 팀 간 협업이 향상됩니다.

전제 조건

  • GroupDocs.Merger for .NET (최신 NuGet 패키지)
  • .NET Framework 4.5+ 또는 .NET Core/5+/6+
  • Visual Studio 2022 이상
  • 기본 C# 지식 및 파일 I/O에 대한 이해

GroupDocs.Merger for .NET 설정

설치

다음 방법 중 하나로 패키지를 추가합니다:

.NET CLI

dotnet add package GroupDocs.Merger

Package Manager

Install-Package GroupDocs.Merger

NuGet Package Manager UI
“GroupDocs.Merger”를 검색하고 최신 버전을 설치합니다.

라이선스 획득

  1. 무료 체험 – 비용 없이 라이브러리를 테스트합니다.
  2. 임시 라이선스 – 임시 라이선스 페이지에서 요청합니다.
  3. 구매 – GroupDocs 구매 페이지에서 정식 라이선스를 구매합니다.

기본 초기화

Merger는 모든 작업의 진입점입니다.

using (Merger merger = new Merger("path_to_your_spreadsheet.xlsx"))
{
    // Your code to work with the document
}

Excel에 OLE 객체를 삽입하는 방법?

소스 워크북을 로드하고 OLE 옵션을 구성한 뒤 Merger가 객체를 삽입하도록 합니다. 아래 섹션에서는 간결하고 바로 실행 가능한 워크플로를 제공합니다.

기능 개요

OLE 객체를 삽입하면 셀 안에 전체 PDF를 저장할 수 있어 원본 레이아웃을 유지하면서 Excel에서 원클릭으로 접근할 수 있습니다.

단계별 구현

1. 경로 및 페이지 번호 설정

스프레드시트, 삽입할 파일 및 대상 셀 주소를 지정합니다.

string filePath = "YOUR_DOCUMENT_DIRECTORY/SAMPLE_XLSX";
string embeddedFilePath = "YOUR_DOCUMENT_DIRECTORY/SAMPLE_PDF";
int pageNumber = 2; // The specific page to embed

// Output path for the modified spreadsheet
string filePathOut = Path.Combine("YOUR_OUTPUT_DIRECTORY", "OUT_SAMPLE_NAME.xlsx");

2. OleSpreadsheetOptions 구성

OleSpreadsheetOptions는 OLE 객체가 워크시트에 배치되는 위치와 아이콘 표시 방식을 정의합니다.

// Specify row and column indices for embedding
OleSpreadsheetOptions oleCellsOptions = new OleSpreadsheetOptions(embeddedFilePath, pageNumber)
{
    RowIndex = 2,
    ColumnIndex = 2
};

3. Merger 초기화 및 삽입 수행

Merger 클래스가 실제 삽입을 담당합니다. 호출이 끝나면 워크북에 OLE 아이콘이 포함됩니다.

using (Merger merger = new Merger(filePath))
{
    merger.ImportDocument(oleCellsOptions); // Import the specified document as an OLE object into the spreadsheet
    merger.Save(filePathOut); // Save the modified document
}

일반 문제 해결 팁

  • 모든 파일 경로가 절대 경로이거나 실행 파일 기준으로 올바르게 해석되는지 확인하세요.
  • 지정한 페이지 번호가 소스 PDF에 존재하는지 확인하십시오. 존재하지 않으면 예외가 발생합니다.
  • 삽입된 객체가 표시되지 않으면 대상 Excel 버전이 OLE를 지원하는지 확인하세요(대부분 최신 버전 지원).

실제 적용 사례

  1. 재무 보고서 – 감사된 재무제표를 요약 표 옆에 직접 첨부합니다.
  2. 프로젝트 문서 – 설계 사양, 위험 분석, 계약서 등을 마스터 트래커에 포함합니다.
  3. 교육 대시보드 – 직원이 빠르게 참고할 수 있도록 사용자 매뉴얼이나 정책 PDF를 삽입합니다.

성능 고려 사항

  • 파일 크기 – 워크북 부피를 방지하려면 삽입 PDF를 5 MB 이하로 유지하세요.
  • 메모리 사용량 – GroupDocs.Merger는 데이터를 스트리밍하므로 대용량 소스 파일이라도 메모리 소모가 적습니다.
  • 객체 해제 – Merger 인스턴스는 사용 후 반드시 Dispose()를 호출해 파일 핸들을 즉시 해제합니다.

자주 묻는 질문

Q: OLE 객체란 무엇인가요?
A: OLE(Object Linking and Embedding) 객체는 다른 파일(PDF, Word, 이미지 등)을 호스트 문서 안에 저장하여 문서 내에서 직접 편집하거나 열 수 있게 합니다.

Q: 다른 Office 형식에도 OLE 객체를 삽입할 수 있나요?
A: 예—GroupDocs.Merger는 Word, PowerPoint, Visio 파일도 지원합니다.

Q: 암호로 보호된 PDF를 어떻게 처리하나요?
A: OleSpreadsheetOptions 인스턴스를 만들 때 비밀번호를 제공하면 라이브러리가 자동으로 파일을 복호화합니다.

Q: 삽입된 PDF에 크기 제한이 있나요?
A: 기술적으로 명확한 제한은 없지만 10 MB를 초과하는 파일은 워크북 로드 시간이 눈에 띄게 늘어날 수 있습니다.

Q: 더 많은 예제를 어디서 찾을 수 있나요?
A: 추가 코드 샘플 및 API 레퍼런스는 공식 GroupDocs Documentation을 참고하세요.

추가 리소스


마지막 업데이트: 2026-09-21
테스트 환경: GroupDocs.Merger 23.12 for .NET
작성자: GroupDocs

관련 튜토리얼