Re: Рисование больших картинок в BCB 6.0
От: Danchik Украина  
Дата: 15.12.06 14:46
Оценка:
Здравствуйте, de cobre, Вы писали:

DC>Требуется нарисовать большую картинку. Сама картинка проста — состоит из обычных графических примитивов типа: линии, прямоугольники, эллипсы, т.е. всё это очень просто рисуется методами TCanvas. Проблема возникает когда пытаемся рисовать картинку размерами примерно 8000 х 8000 пикселов. При первой же попытке использовать любой из методов холста (без разницы какой) выскакивает рантайм исключение о том, что недостаточно памяти для завершения данной операции, что не удивительно, если перемножить разрядность пиксела на их общее количество. Как можно это побороть? Вариант на вскидку — каким-то образом уменьшить разрядность холста, т.к. мне не нужно полноценного многоцветия. Только вот пока не найду как это сделать в билдере. Находил вроде бы похожий по функционалу код на делфях, но в билдере данный момент (изменение разрядности) реализован иначе. Или я что-то не так понял, тогда прошу пояснить.


DC>ЗЫ Может кто-то подскажет другой метод рисования?


Уточните детали.
Вы рисуете на дескрипторе экрана картинку (Bitmap 8000x8000). И у вас при вызове Canvas.Draw(X, Y, Bitmap) вылетает ошибка.
Правильно я понял?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.