Вниз
Скачать: CL | DM;

Front с прозрачным фоном на Canvas-e   Найти похожие ветки 

← →
pasha676   (2003-07-08 15:57) [0]

Сел на якорь на таком простом вопросе. Как не пишу (OutText) на канвасе - все одно белый фон текста. Как его сделать прозрачным?


← →
MBo ©   (2003-07-08 16:09) [1]

SetBKMode Transparent ставил?


← →
pasha676   (2003-07-08 16:46) [2]

Нет. Вот такую ерунду по хэлпу писал

TrassaBmp.Transparent:=true;
TrassaBmp.TransparentColor:=$00FFFFFF;
TrassaBmp.TransparentMode:=tmAuto;

ну и потом TrassaBmp.Canvas.TextOut(25,150,"бла-бла бла");

Что есть за свойство SetBKMode и где оно находиться?


← →
iXuSs   (2003-07-08 16:58) [3]

Не стал мудрить, вот из FAQ:

procedure TForm1.Button1Click(Sender: TObject);
var
OldBkMode : integer;
begin
Image1.Picture.Bitmap.Canvas.Font.Color := clBlue;
OldBkMode := SetBkMode(Image1.Picture.Bitmap.Canvas.Handle,TRANSPARENT);
Image1.Picture.Bitmap.Canvas.TextOut(10, 10, "Hello");
SetBkMode(Image1.Picture.Bitmap.Canvas.Handle,OldBkMode);
end;

Полагаю, ты без труда переделаешь под свои нужды.


← →
Дмитрий Мыльников   (2003-07-08 17:04) [4]

А для изменения цвета фона используется функция SetBkColor(HDC, Color)
Кстати, эти же функции влияют и на прозрачность/непрозрачность и цвет фона в заливках контуров (свойство Canvas.Brush.Style, когда оно не bsClear или bsSolid, а какой-нибудь узор). Причём об этом толком нигде нет, я сам в своё время искал методом "научного тыка".


← →
pasha676   (2003-07-08 17:09) [5]

Спасибо нашел. Я думал это свойство битмапа или канваса, а это функция API


← →
MBo ©   (2003-07-08 17:11) [6]

для VCL-TCanvas в большинстве случаев достаточно Brush.Style:=bsClear, а вообще к device context - API-функция SetBKMode



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.035 c
3-40809
Term
2003-10-22 10:55
2003.11.13
Можно ли изменить длинну поля, не потеряв данные в этом поле


14-41874
Думкин
2003-10-24 04:51
2003.11.13
С днем рождения! 24 октября.


1-41697
Endi
2003-11-02 16:17
2003.11.13
Почтовик по умолчанию


1-41463
Alecs
2003-10-28 19:18
2003.11.13
Как поменять CharSet у TRadioGroup, TCheckBox и т.д.?


14-41974
Ёжик
2003-10-17 22:26
2003.11.13
Кто сколько может выпить пива?




   Наверх