Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Вниз

Transparent Bitmap и Cаnvas?   Найти похожие ветки 

 
Zoom ©   (2008-05-15 23:00) [0]

Народ а подскажите пожалуйста я пытаюсь нарисовать
прозрачный Bitmap на Canvas
картинка рисуется а прозрачности почему-то нет ???

i2 := tbitmap.Create;
ImageList1.GetBitmap(1,i2);

Image1.Canvas.Brush.Color := clBlack;
Image1.Canvas.FillRect(rect(1,1,100,100));

i2.Transparent := true;
i2.TransparentColor :=  clwhite;
i2.TransparentMode := tmAuto;
form1.Canvas.Draw(10,10 ,i2);


картинка i2 с чисто белыми краями по идее должна нарисоваться без них на черном фоне, а рисуется с ними ?


 
Zoom ©   (2008-05-16 03:07) [1]

Однако если в ImageList1 добавлять картину с использованием  Transparent Color = clNone , тогда все работает так где-же "портится" bitmap , но цвет окантовки  остается одинаковым в обоих случаях clwhite... 255, 255, 255 ???


 
antonn (work)   (2008-05-16 10:20) [2]

чего рисуешь то? :)
form1.Canvas.Draw(10,10 ,i2); - рисуешь форму на битмапе?


 
Olegz77 ©   (2008-05-16 18:13) [3]


> antonn (work)   (16.05.08 10:20) [2]
> чего рисуешь то? :)
> form1.Canvas.Draw(10,10 ,i2); - рисуешь форму на битмапе?
>


Все правильно, данная конструкция рисует на холсте формы графический объект i2


 
Olegz77 ©   (2008-05-16 18:16) [4]

Zoom, не надо после i2.TransparentColor :=  clwhite; устанавливать i2.TransparentMode := tmAuto, последняя инструкция устанавливает TransparentColor по умолчанию в clDefault


 
Zoom ©   (2008-05-16 23:10) [5]

чего рисуешь то? :)
иконку 16*16 с белым краем, просто на canvas...

может я не правильно обьяснил
прикол вот в чем получается:
если картинку загрузить из файла
i2.LoadFromFile("test2.bmp");
или из ImageList1 с использованием clNone при импорте картинки в ручную
то тогда все нормально, а если картинку импортировать автоматически то есть
ImageList1 сам найдет прозрачную границу, то тогда прозрачности почему-то нету, даже если цвет определять допустим по точке 1,1
i2.TransParentColor := i2.canvas.pixels[1,1];
i2.Transparent := true;

image1.canvas.Draw(10,10,i2);

???



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

Форум: "Начинающим";
Текущий архив: 2008.06.08;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.05 c
2-1210916354
Opera1
2008-05-16 09:39
2008.06.08
ValueListEditor1 добавление значений


11-1190041757
Alexeis_
2007-09-17 19:09
2008.06.08
Более подробная информация о создании зеркал


2-1210690049
wnix
2008-05-13 18:47
2008.06.08
Работа с файлом


15-1208984130
AlexDan
2008-04-24 00:55
2008.06.08
Ноу-хау IBM


2-1210671008
Виктор
2008-05-13 13:30
2008.06.08
Помогите найти ошибку в коде





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский