PDF(Portable Document Format)는 Adobe에서 개발한 대중적이고 널리 사용되는 문서 형식입니다. PDF 문서는 형식이 지정된 텍스트, 이미지, 주석, 양식 필드 등을 비롯한 다양한 콘텐츠를 포함할 수 있습니다. 프로그래밍 방식으로 PDF 문서를 구문 분석하는 것은 널리 사용되는 사용 사례이며 텍스트를 추출하는 여러 가지 방법이 있습니다. 그러나 PDF 문서에서 이미지를 추출하는 것은 복잡한 작업입니다. 이 문서에서는 C#에서 프로그래밍 방식으로 PDF 문서에서 이미지를 얼마나 쉽게 추출할 수 있는지 보여줍니다.
PDF 파일에서 이미지를 추출하는 .NET API
GroupDocs.Parser for .NET API는 PDF 파일에서 이미지를 추출하는 역할을 합니다. PDF와 함께 API는 워드 프로세싱 문서, 스프레드시트, 전자책, 프리젠테이션, 이메일, ZIP 아카이브 및 기타 많은 문서 형식에서 이미지의 구문 분석 및 추출을 지원합니다.
다운로드 섹션에서 DLL 또는 MSI 설치 프로그램을 다운로드하거나 NuGet을 통해 .NET 애플리케이션에 API를 설치할 수 있습니다.
PM> Install-Package GroupDocs.Parser
C#을 사용하여 PDF 문서에서 이미지를 추출하는 단계
몇 줄의 C# 코드를 사용하여 PDF 파일에서 이미지를 가져오는 방법을 단계별로 빠르게 살펴보겠습니다.
- 새 프로젝트를 만듭니다.
- 위에서 언급한 대로 API를 다운로드하거나 최신 API 버전으로 업데이트하십시오.
- 다음 네임스페이스를 추가합니다.
using System;
using System.Collections.Generic;
using System.Text;
using GroupDocs.Parser.Data;
- Parser 클래스를 사용하여 PDF 문서를 로드합니다.
// Parser 클래스의 인스턴스 생성
using (Parser parser = new Parser("path/document.pdf"))
{
// 귀하의 코드는 여기에 있습니다.
}
- GetImages 메서드를 사용하여 문서에서 이미지를 추출합니다.
// 이미지 추출
IEnumerable<PageImageArea> images = parser.GetImages();
// 이미지 추출이 지원되는지 확인
if (images == null)
{
Console.WriteLine("Images extraction isn't supported");
return;
}
- 컬렉션의 각 이미지에 액세스하고 Save 메서드를 사용하여 저장합니다.
// 검색된 이미지를 반복
foreach (PageImageArea image in images)
{
// 이미지 저장
image.Save("imageFilePath/image-" + imageNumber.ToString() + ".jpeg", new ImageOptions(ImageFormat.Jpeg));
imageNumber++;
}
JPG, PNG, BMP, WebP 또는 GIF와 같은 다양한 이미지로 이미지를 저장할 수 있습니다.
C# 전체 코드 – PDF에서 이미지 추출
다음은 PDF 파일에서 모든 이미지를 가져올 수 있는 전체 코드입니다.
// C#을 사용하여 PDF에서 이미지 추출
using (Parser parser = new Parser("path/document.pdf"))
{
IEnumerable<PageImageArea> images = parser.GetImages();
// 이미지 추출이 지원되는지 확인
if (images == null)
{
Console.WriteLine("Images extraction isn't supported");
return;
}
ImageOptions options = new ImageOptions(ImageFormat.Jpeg);
int imageNumber = 0;
// 검색된 이미지를 반복
foreach (PageImageArea image in images)
{
// 이미지 저장
image.Save("imageFilePath/image-" + imageNumber.ToString() + ".jpeg", options);
imageNumber++;
}
}
결과
샘플 PDF 문서

추출된 이미지

필요한 경우 C#을 사용하여 PDF 문서의 특정 페이지에서 이미지 추출하는 방법에 대해서도 별도의 기사에서 설명합니다.
더 읽어보기
문서를 사용하여 .NET 데이터 추출 API에 대해 자세히 알아볼 수 있습니다. 또한 포럼을 통해 질문을 공유할 수 있습니다.