Справочник по компонентам Delphi. Часть 1 - Класс TBitmap
ОГЛАВЛЕНИЕ
Класс TBitmap
TBitmap = class(TGraphic)
Класс соответствует битовой карте, зависимой от устройства (Device — dependent bitmap, DDB). В нем перекрываются методы Assign, LoadFromClipboardFormat, LoadFromStream, SaveToClipboardFormat, SaveToStream. Объект взаимодействует с буфером обмена в формате CF_BITMAP.
Канва битовой карты доступна через свойство:
(ro) property Canvas: TCanvas;
Обратите внимание на то, что другие потомки TGraphic канвы не имеют. С ее помощью можно рисовать на поверхности изображения.
Дескрипторы битовой карты и ее палитры доступны как свойства:
property Handle: HBITMAP;
property Palette: HPALETTE;
Два метода
function ReleaseHandle: HBITMAP;
function ReleasePalette: HPALETTE;
возвращают дескрипторы битовой карты и палитры и после этого обнуляют соответствующие поля, т. е. как бы "отдают" дескрипторы пользователю.
При любом внешнем обращении к дескриптору битовой карты и любой попытке рисовать на ее канве, разделение одной картинки несколькими объектами прерывается, и объект получает свою отдельную копию содержимого дескриптора. Для этого есть методы:
procedure Dormant ;
— выгружает изображение в поток и уничтожает дескрипторы битовой карты и палитры,
procedure Freelmage;
— "освобождает" дескриптор битовой карты для дальнейшего использования и внесения изменений. Это означает, что если на данный дескриптор есть ссылки, то он дублируется; поток очищается.
Битовая карта может быть монохромной и цветной, что определено свойством:
property Monochrome: Boolean;
Значение True соответствует монохромной битовой карте. При его изменении происходит преобразование содержимого к требуемому виду.
"Фоновый" цвет битовой карты:
(Ro) property TransparentColor: TColor;
Это тот цвет, который можно отменить в операции BrushCopy, чтобы она выглядела прозрачной. Для монохромной карты этот цвет — белый.