대규모 문서 아카이브를 자동화하고 수출하는 방법

대규모 문서 아카이브를 자동화하고 수출하는 방법

스캔된 이미지의 대규모 컬렉션을 아카이브하고 디지털화하는 것은 자동화없이 흔들리고 있습니다. .NET에 대한 Aspose.Imaging은 전체 프로세스를 촉진합니다. - 수천 개의 파일을 가진 다큐멘터리, 탐색 및 그들을 대량으로 수출, 강력한 오류 로그 및 출력 관리.

현실 세계 문제

대규모 아카이브에 대한 수동 배치 및 수출은 확장 할 수 없습니다.기구는 비즈니스, 법률, 역사 또는 과학 디지털화 프로젝트를위한 완전히 자동화 된 솔루션이 필요합니다.

솔루션 검토

리커시브 배치 스크립트를 사용하여 모든 하위 폴더, 로그 결과 및 원하는 형식으로 수출되는 모든 지원된 이미지를 처리합니다.

원칙

  • Visual Studio 2019 또는 이후
  • .NET 6.0 또는 이후 (또는 .Net Framework 4.6.2+)
  • NuGet에서 .NET에 대한 Aspose.Imaging
  • 소스 아카이브 폴더 (지방, 네트워크 또는 클라우드 지도)
PM> Install-Package Aspose.Imaging

단계별 실행

단계 1 : 모든 이미지 파일을 반복적으로 찾기

string rootDir = "./archive_input";
string outputDir = "./archive_output";
Directory.CreateDirectory(outputDir);

// All supported types: jpg, png, tif, bmp, gif, etc.
var files = Directory.GetFiles(rootDir, "*.*", SearchOption.AllDirectories)
    .Where(f => f.EndsWith(".jpg", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".jpeg", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".png", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".tif", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".tiff", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".bmp", StringComparison.OrdinalIgnoreCase)
             || f.EndsWith(".gif", StringComparison.OrdinalIgnoreCase))
    .ToArray();

단계 2 : 오류 처리와 함께 배치 및 수출

using Aspose.Imaging;
using Aspose.Imaging.ImageOptions;

List<string> failedFiles = new List<string>();
foreach (var file in files)
{
    try
    {
        using (var image = (RasterImage)Image.Load(file))
        {
            image.NormalizeAngle(false, Color.White);
            string relPath = Path.GetRelativePath(rootDir, file);
            string outPath = Path.Combine(outputDir, relPath);
            Directory.CreateDirectory(Path.GetDirectoryName(outPath));
            image.Save(outPath, new TiffOptions(TiffExpectedFormat.Default));
        }
    }
    catch (Exception ex)
    {
        failedFiles.Add($"{file}: {ex.Message}");
    }
}

// Save log for failed files
File.WriteAllLines(Path.Combine(outputDir, "deskew_failed_files.log"), failedFiles);

단계 3 : 일정 및 모니터링

Windows Task Scheduler 작업으로 설정하거나 새로운 스캔을 자동으로 실행하는 것과 유사합니다.

사례 및 응용 프로그램 사용

  • 비즈니스 / 법률 아카이브 (계약, 사례 파일)
  • 도서관 및 역사적 디지털화
  • 과학적 또는 연구 이미지 컬렉션
  • 준수 또는 감사를 위한 무조건 스캔 프로젝트

일반적인 도전과 해결책

** 네트워크 중단:** 로컬 복사본 및 resync, 또는 로그 및 리트리 처리.

대규모 또는 부패한 파일: 로그, 스키 및 실패 항목을 개별적으로 검토합니다.

** 혼합 파일 형식:** 처리 중 필터링 또는 정상화.

모범 사례

  • 추적 가능성에 대한 기록을 유지하십시오
  • 처리하기 전에 원본 백업
  • 완전한 아카이브 전에 작은 배치 테스트

FAQ

Q: 수백만 개의 파일을 처리할 수 있습니까?**A: 예 - 일자리를 분할하거나, 동시에 실행하거나 폴더를 흔들어 줄 수있는 규모입니다.

**Q: 네트워크 드라이브 또는 클라우드 맵을 사용하여 이것을 사용할 수 있습니까?**A: 예, 드라이브가 스크립트에 접근 할 수있는 한.

**Q: 어떻게 새로운 파일에서 작업을 유지할 수 있습니까?**A: Task Scheduler 또는 지속적인 통합 도구를 사용합니다.

결론

Aspose.Imaging for .NET, 심지어 가장 큰 아카이브도 자동으로 제거 및 수출 할 수 있습니다. .NET API 참조를 위한 Aspose.Imaging .

 한국어