성능을 저하시키지 않으면 서 (MVVM을 사용하여) WPF에서 이미지의 색조/색을 어떻게 잡을 수 있습니까? 코드에서 비트 맵을 수정하면 많은 이미지가 변경되어 성능이 저하되므로 순수한 XAML 솔루션이 적합합니다. 이미지는 단순한 모양 이상으로 구성되어 있으므로 경로를 사용할 수 없습니다.WPF에서 부분적으로 투명한 이미지에 색을 더하기
3
A
답변
5
WinForms/GDI +와 달리 WPF는 렌더링되는 이미지를 색칠하거나 색조를 지정하는 쉬운 방법이없는 것처럼 보입니다. 이를 달성하기위한 두 가지 아이디어는 쉐이더를 사용하거나 이미지 위에 컬러 사각형을 오버레이하는 것입니다.
나는 직사각형 경로를 시도하기로 결심했다. 기본적으로 이미지 위에 색상이 지정된 사각형을 겹쳐서 지정하고 OpacityMask
을 사용하여 색상 채우기를 특정 영역으로 제한하면됩니다. OpacityMask는 주로 경로와 함께 사용되지만 ImageBrush
을 비롯한 모든 종류의 브러시를 사용할 수 있습니다. 즉, 이미지를 채색 색상의 "스텐실"로 사용할 수 있습니다.
예 :는 오버레이 & 전에
(사용자가 할 수있는 "하이라이트"지도의 한 부분이, 실제 이미지가 this처럼 보이는 내 응용 프로그램에서 촬영) 마스크
오버레이 후 & 마스크
다음은이에 필요한 XAML의 모든입니다 : 내가하는 ColorToBrushConverter를 사용 했으로
<Image
Source="{Binding MyImage}"
Width="150"
Height="150" />
<Rectangle Width="150" Height="150">
<Rectangle.Fill>
<SolidColorBrush Color="{Binding Color}"/>
</Rectangle.Fill>
<Rectangle.OpacityMask>
<ImageBrush ImageSource="{Binding MyImage}"/>
</Rectangle.OpacityMask>
</Rectangle>
는 브러시에 색을 결합하기.
관련 문제
- 1. 부분적으로 투명한 배경의 UITabbar
- 2. 은 부분적으로 투명한
- 3. UIKit. 투명한 색을 설정하는 방법?
- 4. 자바에서 투명한 픽셀의 색을 바꿉니다
- 5. wp8의 투명한 이미지에 배경색 추가
- 6. 배경 이미지에 투명한 원 추가
- 7. HTML5의 이미지에 색을 더하는 방법
- 8. Tkinter에 부분적으로 투명한 이미지를 추가하는 방법은 무엇입니까?
- 9. OpenGL에서 부분적으로 투명한 HUD 스타일 오버레이
- 10. 부분적으로 투명한/낮은 불투명도 탐색 막대?
- 11. PyQt 투명한 배경 이미지 부분적으로 검은 색
- 12. 빌드가 부분적으로 투명한 이미지 픽셀로 바뀝니다.
- 13. Wpf에서 Bitmapimge를 이미지에 바인딩 하시겠습니까?
- 14. WPF에서 DatePicker로 작업 : 빼기, 더하기 문제
- 15. iOS : 부분적으로 텍스트의 색을 변경하는 방법
- 16. 이미지에 더하기 숫자를 반환하는 웹 서비스
- 17. WPF에서 투명한 배경으로 이미지를 만드는 방법
- 18. iOS에서 투명 PNG 이미지에 색을 칠하는 방법은 무엇입니까?
- 19. Jcrop은 렌더링시 투명한 이미지에 검정색 배경을 추가합니다.
- 20. 이미지에 투명한 div를 오버레이 할 수 있습니까
- 21. 어떻게 이미지에 이미지가 부분적으로 겹쳐져 있습니까?
- 22. PNG 이미지에 놓기 색을 끌어 놓습니다.
- 23. Python (PIL) : 투명한 이미지를 밝게하고 다른 이미지에 붙여 넣기
- 24. 드래그 가능한 UIImageView에 부분적으로 투명한 및 모양의 불규칙한
- 25. WPF에서 동적 URL을 사용하여 이미지에 바인딩하는 방법?
- 26. UIScrollView 내에서 부분적으로 투명한 내용으로 이상한 동작이 발생했습니다.
- 27. 완전 투명 JFrame에서 부분적으로 투명한 JButton을 만드는 방법은 무엇입니까?
- 28. NSTextField는 drawsBackground = YES 일 때 부분적으로 투명한 텍스트를 그립니다.
- 29. 안드로이드에서 부분적으로 투명한 배경을 가진 div 밑의 기발한 얇은 선
- 30. 런타임시 TImage의 투명한 색을 설정하는 FMX 함수가 있습니까?
XAML에서 SolidColorBrush 인스턴스를 만들고 ' Rectangle.Fill>과 같은 Color 속성을 바인딩하여 ColorToBrushConverter를 저장할 수 있습니다. –
Clemens
@ 클레멘스, 나는 그것을 몰랐다, 고마워! – Cyral