이전 게시물에서 Java 문서에서 이미지를 추출하는 방법에 대해 논의했습니다. 오늘 우리는 C#을 사용하여 동일한 목표를 달성하려고 합니다. 지난 포스트를 방문하지 않으셨다면 걱정마세요. 이 기사에서는 문서 구문 분석 .NET API를 사용하여 C# 응용 프로그램의 PDF, Excel, PowerPoint 및 Word 문서에서 이미지를 프로그래밍 방식으로 추출하는 방법을 배웁니다.

여기에서는 다음 주제를 다룹니다.
- 이미지, 텍스트 및 메타데이터 추출 .NET API
- PDF 문서에서 이미지 추출
- Word, Excel, PowerPoint 문서에서 이미지 추출
- 특정 페이지에서 이미지 추출
- 이미지 추출 지원 형식
이미지, 텍스트 및 메타데이터 추출 .NET API

GroupDocs.Parser for .NET은 문서 파싱 및 데이터 추출 .NET API입니다. 워드 프로세싱 문서, 스프레드시트, 프레젠테이션, 아카이브에서 문서 구문 분석 및 이미지, 텍스트 및 메타데이터 추출을 지원합니다. 이메일 문서. 기사 말미에는 이미지 추출을 위해 API에서 지원하는 문서 형식이 언급되어 있습니다.
이 기사에서는 이 API를 사용하므로 해당 바이너리를 다운로드하거나 NuGet에서 API를 설치하여 환경을 준비하는 것이 좋습니다.
C#의 PDF 문서에서 이미지 추출

다음의 간단한 단계에 따라 모든 PDF 문서에서 모든 이미지를 쉽게 검색할 수 있습니다.
- 소스 문서로 Parser 클래스 개체를 인스턴스화합니다.
- Parser 클래스의 GetImages 메서드를 호출하여 PageImageArea 개체의 모든 이미지 컬렉션을 가져옵니다.
- PageImageArea를 반복하여 모든 이미지를 가져옵니다.
- PageImageArea의 Save 메서드를 사용하여 디스크에 이미지를 저장합니다.
추출된 이미지는 BMP, GIF, JPEG, PNG, WebP 형식으로 저장할 수 있습니다. 전체 단계를 보여주기 위해 전체 코드가 아래에 나와 있습니다.
// GroupDocs.Parser for .NET을 사용하여 C#의 Word, Excel, PPT, PDF에서 이미지 추출
using (Parser parser = new Parser("path/document.pdf"))
{
IEnumerable<PageImageArea> images = parser.GetImages();
ImageOptions options = new ImageOptions(ImageFormat.Png);
int imageNumber = 0;
// 검색된 이미지 반복
foreach (PageImageArea image in images)
{
// 이미지 저장 및 페이지 인덱스, 직사각형 및 이미지 유형 인쇄:
Console.WriteLine(string.Format("Page: {0}, R: {1}, Type: {2}", image.Page.Index, image.Rectangle, image.FileType));
image.Save("imageFilePath/image-" + imageNumber.ToString() + ".png", options);
imageNumber++;
}
}

C#의 Word, Excel, PowerPoint 파일에서 이미지 추출
PDF 형식에 국한되지 않고 변경되지 않은 코드 기반으로 워드 프로세서 문서, 스프레드시트, 프레젠테이션에서 모든 이미지를 가져올 수 있습니다. 파일 확장자로 소스 문서 경로를 변경하기만 하면 문서가 구문 분석되어 모든 이미지를 추출하고 디스크에 저장합니다.
using (Parser parser = new Parser("path/document.docx")) // Word Document
// using (Parser parser = new Parser("path/document.xlsx")) // Excel Spreadhseet
// using (Parser parser = new Parser("path/document.pptx")) // Presentation
// using (Parser parser = new Parser("path/document.pdf")) // PDF Document
C#의 특정 문서 페이지에서 이미지 추출
문서의 특정 페이지에서 이미지를 추출하려는 경우 아래 단계와 C# 코드를 사용하여 쉽게 수행할 수 있습니다.
- GetDocumentInfo 메서드를 사용하여 문서에 대한 정보를 가져옵니다.
- 문서 정보에서 전체 PageCount 및 기타 정보를 빼냅니다.
- GetImages(pageIndex) 메서드를 사용하여 대상 페이지 인덱스를 전달합니다.
- 검색된 이미지를 저장하려면 이미지 컬렉션을 탐색하고 저장 방법을 사용하여 개별 이미지를 저장합니다.
// GroupDocs.Parser for .NET를 사용하여 C#의 Word, Excel, PowerPoint, PDF의 특정 페이지에서 이미지 추출
using (Parser parser = new Parser("path/document.pdf"))
{
// 문서 정보 얻기
IDocumentInfo documentInfo = parser.GetDocumentInfo();
ImageOptions options = new ImageOptions(ImageFormat.Png);
int imageNumber = 0;
// 페이지 반복
for (int pageIndex = 0; pageIndex < documentInfo.PageCount; pageIndex++)
{
// 페이지 번호 인쇄
Console.WriteLine(string.Format("Page {0}/{1}", pageIndex + 1, documentInfo.PageCount));
// 이미지를 반복합니다. 예제에서 null 체크 무시
foreach (PageImageArea image in parser.GetImages(pageIndex))
{
// 직사각형 및 이미지 유형 인쇄
Console.WriteLine(string.Format("R: {0}, Text: {1}", image.Rectangle, image.FileType));
image.Save("imageFilePath/image-" + imageNumber.ToString() + ".png", options);
imageNumber++;
}
}
}
C#에서 이미지 추출에 지원되는 형식
다음은 이미지 추출을 위해 GroupDocs.Parser for .NET API에서 지원하는 문서 형식입니다.
문서 유형 | 파일 형식 |
---|---|
워드 프로세싱 문서 | DOC, DOCX, DOCM, DOT, DOTX, DOTM, ODT, OTT, RTF |
스프레드시트 | XLS, XLSX, XLSM, XLSB, XLT, XLTX, XLTM, ODS, OTS, XLA, XLAM, NUMBERS |
프레젠테이션 | PPT, PPTX, PPTM, PPS, PPSX, PPSM, POT, POTX, POTM, ODP, OTP |
휴대용 문서 | |
이메일 | EML, EMLX, MSG |
기록 보관소 | ZIP |
GroupDocs.Parser에 대한 추가 정보
@ 무료 지원 포럼