Hvordan å automatisere avkjøp og eksport av store dokumentarkiv

Hvordan å automatisere avkjøp og eksport av store dokumentarkiv

Aspose.Imaging for .NET strømlinjerer hele prosessen – håndtere mapper med tusenvis av filer, dekke, og eksportere dem i stor mengde, med robust feil logging og utgangsstyring.

Real-verdens problem

Organisasjoner trenger fullt automatiserte løsninger for forretnings-, juridiske, historiske eller vitenskapelige digitaliseringsprojekter.

Oversikt over løsning

Bruk en recursiv batch-skript for å behandle hvert støttet bilde i alle subfoldere, loggresultater og eksport i de ønskede formatene – uten menneskelig inngrep.

Prerequisites

  • Visual Studio 2019 eller senere
  • .NET 6.0 eller nyere (eller .Net Framework 4.6.2+)
  • Aspose.Imaging for .NET fra NuGet
  • Kildearkiv mappe (lokal, nettverk, eller sky-mapped)
PM> Install-Package Aspose.Imaging

Step-by-step implementering

Steg 1: Fortsett å finne alle bildefiler

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();

Steg 2: Batch Deskew og eksport med feil håndtering

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);

Trinn 3: Planlegging og overvåking

Sett opp som en Windows Task Scheduler jobb eller lignende for å kjøre på nye skanninger automatisk.

Bruker tilfeller og applikasjoner

  • Forretnings- og juridiske arkiver (kontrakter, tilfellefiler)
  • Biblioteket og historisk digitalisering
  • Vitenskapelig eller forskningsbilde samlinger
  • Ongoing skanning prosjekter for overholdelse eller revision

Vanlige utfordringer og løsninger

Nettverksforstyrrelser: Behandle lokale kopier og resync, eller logg og tilbakemelding.

Lange eller korrupte filer: Log, skip og gjennomgå mislykkede elementer separat.

Mixed file formater: Filtrere eller normalisere under behandlingen.

Beste praksis

  • Lag logg for sporbarhet
  • Kopiering av originalene før behandling
  • Test på små batcher før full arkiv

FAQ

**Q: Kan jeg behandle millioner av filer?**A: Ja – skala ved å splitte arbeidsplasser, kjøre i parallell, eller chunking mapper.

**Q: Kan jeg bruke dette med nettverksdrivere eller sky-mappede mapper?**A: Ja, så lenge enheten er tilgjengelig for skriptet.

**Q: Hvordan holder jeg jobben i gang på nye filer?**A: Bruk Task Scheduler eller et kontinuerlig integrasjonsverktøy.

Conclusion

Med Aspose.Imaging for .NET, kan selv de største arkivene avkjøres og eksporteres automatisk. for mer om skala eller tilpasse arbeidsflyter, se Aspose.Imaging for .NET API Referanse .

 Norsk