Як автоматично розкривати та експортувати великі архіви документів
Архівувати і цифрувати великі колекції сканованих зображень відбувається без автоматизації. Aspose.Imaging для .NET стримує весь процес — справлятися з папками з тисячами файлів, розтягувати, і експортувати їх в масі, з міцним логінг помилок і управління результатами.
Реальні проблеми світу
Організації потребують повністю автоматизованих рішень для бізнесу, юридичних, історичних або наукових проектів цифровизації.
Огляд рішення
Використовуйте рекурсивний скрипт для обробки кожного підтримуваного зображення в усіх підрозділах, результатах журналу та експорту в бажаних форматах – без людського втручання.
Передумови
- Visual Studio 2019 або вище
- .NET 6.0 або вище (або .Net Framework 4.6.2+)
- Aspose.Imaging для .NET від NuGet
- Джерело архіву папки (місцеві, мережеві або хмарочоси)
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 або подібний до роботи на нових сканах автоматично.
Використання випадків та додатків
- Бізнес / юридичні архіви (контракти, файли справи)
- Бібліотека та історична цифровизація
- Наукові або дослідницькі колекції зображень
- Проекти сканування для дотримання або аудиту
Спільні виклики та рішення
**Підтримки мережі: **Процесувати локальні копії та ресинк, або вхід і відхід.
Довгі або пошкоджені файли: Зареєструйте, перейдіть і перегляньте недійсні елементи окремо.
Формати змішаних файлів: Фільтр або нормалізація під час обробки.
Найкращі практики
- Зберігайте записи для відстеження
- Завантажити оригінал перед обробкою
- Тест на дрібних батах перед повною архівою
FAQ
Q: Чи можу я обробляти мільйони файлів?**Відповідь: Так — масштаби, розділяючи робочі місця, працюючи паралельно або збираючи папки.
**Q: Чи можу я використовувати це з мережевими дисками або папками з хмарочосом?**Відповідь: Так, поки диск доступний для сценарію.
**Q: Як я можу зберегти роботу на нових файлах?**A: Використовуйте програму завдань або інструмент постійної інтеграції.
Заключення
За допомогою Aspose.Imaging для .NET, навіть найбільші архіви можуть бути автоматично розшифровані та експортовані. Завантажити .NET API Reference .