.NET에서 여러 PDF에서 모든 이미지를 추출하는 방법
.NET에서 여러 PDF에서 모든 이미지를 추출하는 방법
싱글에서 이미지 추출 PDF에 대하여 이 가이드는 Aspose.PDF.ImageExtractor 플러그인을 사용하여 여러 PDF에서 대규모 이미지 추출을 자동화하는 방법을 보여줍니다. .NET. 미디어 아카이브, IT 자산 처리 또는 디지털 콘텐츠 재구성에 적합합니다.
배치 처리 작업 흐름
- **당신의 입력을 조직하십시오:**모든 원본 PDF 파일을 하나의 폴더에 넣으십시오 (예 :
/Assets/InputPDFs). - 출력 폴더를 설계하십시오: 선택적으로 각 PDF에 대한 하위 포드를 만들거나 모든 이미지를 하나의 디렉토리로 수집합니다.
- 배치 스크립트를 설정하십시오: Aspose.PDF.Plugin의 사용
ImageExtractor각 파일을 처리하는 루프.
파일을 통해 실행 (코드 예제)
using Aspose.Pdf.Plugins;
using System.IO;
string inputDir = @"C:\Assets\InputPDFs";
string outputBaseDir = @"C:\Assets\ExtractedImages";
string[] pdfFiles = Directory.GetFiles(inputDir, "*.pdf");
foreach (var pdfFile in pdfFiles)
{
// Optionally create a unique folder for each PDF
string pdfName = Path.GetFileNameWithoutExtension(pdfFile);
string imageOutputDir = Path.Combine(outputBaseDir, pdfName);
Directory.CreateDirectory(imageOutputDir);
// Configure extractor
var extractor = new ImageExtractor();
var options = new ImageExtractorOptions();
options.AddInput(new FileDataSource(pdfFile));
// Process extraction
var resultContainer = extractor.Process(options);
int imageIndex = 0;
foreach (var imageResult in resultContainer.ResultCollection)
{
string imgPath = Path.Combine(imageOutputDir, $"img_{++imageIndex}.png");
File.WriteAllBytes(imgPath, imageResult.ToFile());
}
Console.WriteLine($"Extracted {imageIndex} images from {pdfName}");
}출력 관리 및 고급 팁
- 파일러 조직: 각 PDF에 대한 독특한 폴더를 사용하거나 원본 파일 이름 및 페이지에 따라 이름 이미지를 사용합니다.
- Scalability: 100 세 또는 1000 세의 PDF를 처리하는 경우 병렬 처리를 위해 입력 파일을 배치합니다.
- 포맷: 기본적으로 추출 된 이미지는 원래 형식으로 저장됩니다 (예 : PNG, JPEG).
- 로그링: 검토 및 오류 추적을 위한 처리된 PDF/사진에 대한 로그를 유지합니다.
사용 사례
- 광범위한 디지털 아카이브 / 이미지 이주
- 출판 또는 웹을 위한 자동 그래픽 자산 추출
- 법률 또는 법적 증거 수집에서 준비
자주 묻는 질문들
**Q: 어떻게 사용자 지정 폴더에 이미지를 저장하거나 사용자의 이름을 사용할 수 있습니까?**A: PDF 파일 이름 ( 확장 없이)을 사용하여 하위 폴더를 만들고 위에서 보여준 PDF에 따라 이미지를 인덱스합니다.
**Q: 한 배치에서 수백 또는 수천 개의 PDF를 처리할 수 있습니까?**A: 예! 매우 큰 작업을 위해, 입력을 더 작은 배치로 분해하고 최적의 속도를 위해 동시에 실행하십시오.
**Q: 모든 이미지 유형이 추출되었습니까 (JPEG, PNG 등)?**A: 예 - 추출기 원본 형식을 보존하는 경우에 당신은 포스트 프로세스 / 변환 후 제거.