Устал искать(ключевые слова не могу придумать), решил тему создать.
Расстроила меня FreeImage 3. её предел где-то около 200-250Мег, формат - без разницы.
Удивил встроенный недоделанный TBitmap - 382М bmp прочитал (изображение rgb 24bit), съев в 2 раза больше памяти. Размеры показал правильно, но пощупать его функцией Canvas.CopyRect(R1, Bitmap1.Canvas, R2) не могу, "out of memory" не даёт.
Прога пока 32бит(старая dll держит), но берут меня сомнения и на счет 64 бит....
Проблема наверно не простая, раньше работали с такими растрами только аргис и фотошоп, остальные (ACDSee, FastStone Image Viewer и пр) до 200-400М.
Сейчас FastStone Image Viewer(с версии 5.3) 2Гб открывал, 7Гб нет.
Буду рад ссылкам, советам, предложениям.
На текущий момент у меня мысль такая: написать "велосипед" для чтения bmp (3Гб) с резкой "на лету" на тайлы (куски по 50-10М), про остальные форматы забыть.
PS :Конкретика: нужно открыть(распаковать), точное масштабирование Canvas.CopyRect, и получить доступ к пикселям (например использованием растр.GetDataLineStart(y); аналог Delphi TBitMap.ScanLine, неплохо бы сохранить изменённый.
Специфика (пока не до неё):у "гигантских" растров как правило больше 3-х каналов (+инфракрасные и ультрафиолетовые, 16-битный панхром)
Область использования - ГИС.