|
#1
|
|||
|
|||
не хватает памяти
нужно создать bitmap, пишу так
Код:
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; procedure CreateBitMap(); var Form1: TForm1; BitMap : TBitMap; implementation {$R *.dfm} procedure CreateBitMap(); begin BitMap := TBitMap.create; BitMap.Height :=21517; BitMap.Width := 1276; BitMap.PixelFormat := pf15bit ; end; procedure TForm1.Button1Click(Sender: TObject); begin CreateBitMap(); end; end. выдает ошибку что не хватает памяти для выполнения. Но мне нужно чтобы был именно такого большого размера bitmap. Можно ли как-то выполнить? |
#2
|
||||
|
||||
У меня твой код не выдал такую ошибку.
Проверил в диспетчере задач (хотя это не совсем точно) 600 кб до нажатия на кнопку, 55 Мб с копейками после нажатия. В начале был Бит, потом Байт и только потом появилось Слово... |
#3
|
||||
|
||||
Попробуйте BitMap.PixelFormat := pf15bit поставить до указания ширины и высоты. Могу ошибаться, но кажется, что так вы сэкономите память при создании изображения.
Начинающий программист уверен, что в 1 килобайте 1000 байт.
Законченный программист уверен, что в 1 километре 1024 метра. |
#4
|
||||
|
||||
Цитата:
В начале был Бит, потом Байт и только потом появилось Слово... |