2010-04-20 15 views
7

Chcę umieścić obraz na przycisku, ale chcę, aby część obrazu była przezroczysta. Jak mam to zrobic?Utwórz część przezroczystego obrazu

+0

Czy możesz edytować obraz i zapisać go jako plik PNG z przezroczystością? Wydaje się, że jest to najłatwiejsza opcja, chyba że nie możesz tego zrobić z jakiegoś powodu. – RandomEngy

Odpowiedz

4

Wypróbuj właściwość Image.OpacityMask. Możesz nadać mu pędzel, który określa region, który ma być przezroczysty.

EDIT: Od MSDN:

Nie ma bezpośredniego wsparcia dla kluczowania kolorów bitmapy w WPF. Jednak samodzielne wdrożenie jest dość łatwe. Dwayne ma zaimplementował ColorKeyBitmap na swoim blogu: : http://blogs.msdn.com/dwayneneed/archive/2008/06/20/implementing-a-custom-bitmapsource.aspx Wierzę, że łączy się on również z kodem pod numerem Codeplex. Można też to osiągnąć jedynie poprzez czytanie bitmapy w pamięci systemowej, iteracja przez wszystkie piksele i ustawienie ich wartości siebie, a budowy nowej bitmapy z tego tablicy.

+0

Czy możesz ustawić kolor maski celu krycia zamiast regionu? –

+0

Widziałem obrazy, które mają fioletowe tło. Jest sposób, aby zmusić ten kolor, by stał się przezroczysty. Czy istnieje sposób to zrobić w WPF? –

+0

Projekt Dwayne nie jest budowany, więc nie mogę go użyć. Jestem zdziwiony tutaj. Umieszczanie obrazu na przycisku jest standardową praktyką. Czy mówisz, że nie ma prostego sposobu na zrobienie tego w WPF? –

3

pomocą programu paint (używam Paint.NET), aby zmienić obszar, który ma przejrzysty do ALHA = 0 koloru. Następnie zapisz obraz (mój był JPG) jako PNG. Wydawało się działać dobrze dla mnie w kontroli obrazu WPF.

Powiązane problemy