Спрайт в C#
Всем привет! Заранее спасибо! Имеется картинка в файле. Экран должен иметь свой фон, который не совпадает с фоном картинки. Как можно выводить картинку на экран без ее фона? Читал, что надо назначать пикселям фона картинки прозрачность. Но у меня не получилось это сделать с помощью GDI.:confused:
Либо сохраняйте изображение в формат, поддерживающий альфа-канал (из стандартных - png), либо используйте Bitmap.MakeTransparent(), либо отрисовывайте с помощью перегруженного метода Graphics.DrawImage(), принимающего экземпляр типа ImageAttributes в качестве параметра. Последние два варианта используют цветовые ключи, которые, в свою очередь, плохо работают с изображениями, сжатыми с потерей качества; альфа-канал, таким образом, более предпочтителен.
Спасибо за информацию, но я не понял насчет альфа-канала. Каким образом его создать? Пробовал в Corel, но не получилось. Выводит всю картинку с фоном.:confused:
Цитата: coder2009
Спасибо за информацию, но я не понял насчет альфа-канала. Каким образом его создать? Пробовал в Corel, но не получилось. Выводит всю картинку с фоном.:confused:
Paint.NET умеет работать с альфаканалом в PNG.
Photoshop->Select->Color Range->тыкаем фон->OK->*клавиша delete*->Save As...->image.png
Спасибо за помощь!!!