Какие библиотеки доступны для манипулирования сверхбольшими изображениями в .Net - PullRequest
4 голосов
/ 11 февраля 2009

У меня есть несколько очень больших файлов, например, 320 МБ TIF-файла с 14000 х 9000 пикселей.

Операции, которые мне нужно выполнить, - это масштабирование изображений, чтобы получить меньшие версии, и разбиение изображения на плитки.

Мой код отлично работает с небольшими файлами, и я использую объекты .Net Bitmap, но иногда я получаю исключения "Недостаточно памяти" для больших файлов.

Я пытался использовать библиотеки FreeImage FreeImageBitmap, но у меня те же проблемы.

Я использую что-то вроде следующего для масштабирования изображения:

using (Graphics g = Graphics.FromImage((Image)result))
{
   g.DrawImage(
      source,
      xOffset, yOffset,
      source.Width * scale, source.Height * scale
   );
}

В идеале я бы хотел, чтобы сторонняя библиотека выполняла всю сложную работу, но если у вас есть какие-либо советы или ресурсы с дополнительной информацией, я был бы признателен.

1 Ответ

3 голосов
/ 12 февраля 2009

AForge должно быть очень хорошим!

...