Kā automātiski izrakstīt un eksportēt lielu dokumentu arhīvu

Kā automātiski izrakstīt un eksportēt lielu dokumentu arhīvu

Aspose.Imaging for .NET paātrina visu procesu — rīkojiet mapes ar tūkstošiem failu, izkliedējot un eksportējot tos daudzumā, ar spēcīgu kļūdu ierakstu un iznākumu pārvaldību.

Reālā pasaules problēma

Organizācijām ir vajadzīgi pilnībā automatizēti risinājumi biznesa, juridisko, vēsturisko vai zinātnisko digitalizācijas projektiem.

Risinājumu pārskats

Izmantojiet recursīvu batch skriptu, lai apstrādātu katru atbalstīto attēlu visos subfolders, log rezultātos un eksportēt vēlamā formātā – bez cilvēka iejaukšanās.

Prerequisites

  • Visual Studio 2019 vai vēlāk
  • .NET 6.0 vai jaunāks (vai .Net Framework 4.6.2+)
  • Aspose.Imaging par .NET no NuGet
  • Sources archive folder (vietējais, tīkla vai mākoņa mapēts)
PM> Install-Package Aspose.Imaging

Step-by-step īstenošana

1. solis: atkārtoti atrast visus attēla failus

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. solis: Batch Deskew un eksports ar kļūdu apstrādi

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. solis: grafiks un monitorings

Iestatīt kā Windows Task Scheduler darbu vai līdzīgu, lai automātiski veiktu jaunus skenējumus.

Izmantojiet gadījumus un pieteikumus

  • Biznesa / juridiskie arhīvi (līgumi, gadījumu faili)
  • Bibliotēka un vēsturiskā digitalizācija
  • Zinātniskās vai pētniecības attēlu kolekcijas
  • Skanēšanas projekti atbilstības vai revīzijas nolūkā

Kopīgi izaicinājumi un risinājumi

Tīkla pārtraukumi: Pārstrādā vietējās kopijas un resync, vai log un retry.

Lielie vai bojāti faili: Atsevišķi ierakstiet, pārslēdziet un pārskatiet neveiksmīgus elementus.

Mixed file formats: Filtrēt vai normalizēt apstrādes laikā.

Labākās prakses

  • Saglabājiet logus izsekojamībai
  • Oriģinālās kopijas pirms apstrādes
  • Pārbaude uz maziem gabaliem pirms pilna arhīva

FAQ

Q: Vai es varu apstrādāt miljonus failu?**A: Jā – skala, sadalot darbus, strādājot paralēli vai izkliedējot lapas.

**Q: Vai es varu to izmantot ar tīkla diskiem vai mākoņa mapētām mapēm?**A: Jā, tik ilgi, kamēr disks ir pieejams skriptam.

**Q: Kā es saglabāju darbu darbā ar jauniem failiem?**A: Izmantojiet uzdevumu grafiku vai nepārtrauktu integrācijas rīku.

Conclusion

Ar Aspose.Imaging .NET, pat lielākos arhīvus var automātiski izrakstīt un eksportēt. Aspose.Imaging par .NET API atsauci .

 Latviski