Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Общие вопросы > Вопрос по Image


Автор: Pavelbej 7.1.2007, 13:49
Помогите разобратся с такой проблемой. На форме находится Image1 в котором загружаются изображения, при этом размер программы в памяти увеличивается уж слишком. Размер Image1 - 150 х 150 пиксел, изображения - большие. Можно как-то этот Image1 облегчить(урезать) но при этом чтобы осталось изображение на канвасе компонента?

Автор: Sunvas 7.1.2007, 13:59
Цитата(Pavelbej @  7.1.2007,  13:49 Найти цитируемый пост)
Можно как-то этот Image1 облегчить

Paintbox?

Автор: MetalFan 7.1.2007, 14:26
загружай в память только то, что отрисовывается. используй MMF
где-то было уже на эту тему, только на delphimaster помоему.

Автор: Alexeis 7.1.2007, 14:39
Цитата(Pavelbej @  7.1.2007,  13:49 Найти цитируемый пост)
На форме находится Image1 в котором загружаются изображения, при этом размер программы в памяти увеличивается уж слишком.

Ничего подобного я сейчас протестил на 640х480х24, размер которой 900 кб. Размер программы в памяти увеличился на 916кб, но не факт, что 16 кб это память занятая самим объектом. При загрузке изображения, просто становятся востребованными методы, которые раньше были не востребованы, а потому они достаются из файла подкачки и загружаются в память. Таск мэнеджер показывает лишь сколько прога занимает в ОЗУ, а не всю занятую память. Размер программы в ОЗУ постоянно меняется под воздействием многих факторов, потому так просто нельзя говорить, что много или мало памяти лишней расходуется. К примеру прога на делфи обычно при запуске размещается в ОЗУ лишь примерно на половину, все остальное остается на диске.

Автор: Pavelbej 9.1.2007, 12:42
Alexeis,  а разве это нормально чтобы в Таск мэнеджере программа имела до 50 МБ, в зависимости от размера картинки. Поэтому и хочу как бы избавится от Bitmapa и при этом изображение оставалось.

Автор: Snowy 9.1.2007, 12:57
Ты наверное стретчишь изображение.
Юзай поиск на тему масштабирования изображения.
Отресайзь вручную и потом загоняй в имагу.

Автор: Alexeis 9.1.2007, 14:20
Цитата(Pavelbej @  9.1.2007,  12:42 Найти цитируемый пост)
 а разве это нормально чтобы в Таск мэнеджере программа имела до 50 МБ

Такую картинку невозможно отобразить на обычном экране! 1600х1200х32 = 8Мб

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)