[英]Merge an ImageBrush and a SolidColorBrush ? (as a Background of a Canvas)
我有一個ImageBrush和一個SolidColorBrush。 問題是,我現在想使用這些屬性設置畫布背景。
我可以輕松地將背景設置為ImageBrush或SolidColorBrush,但是可以進行某種合並嗎? 問題是我的ImageBrush.Stretch設置為Uniform,所以我可以看到后面的背景色! (“填充”不是這種情況)
現在,Brush是一個抽象類,因此我想提供的解決方案是對其進行擴展,但是對於一件聽起來很簡單且對我來說通用的事情,確實需要做很多工作……
還沒有其他解決方案嗎?
關於此事,盡管它具有圖像的絕對大小以及更重要的是長寬比被忽略的缺點。 但這可能會給您提示。
<Canvas>
<Canvas.Background>
<DrawingBrush>
<DrawingBrush.Drawing>
<DrawingGroup>
<GeometryDrawing Brush="Orange">
<GeometryDrawing.Geometry>
<RectangleGeometry Rect="0,0,1,1"/>
</GeometryDrawing.Geometry>
</GeometryDrawing>
<ImageDrawing ImageSource="C:\Users\Public\Pictures\Sample Pictures\Desert.jpg" Rect="0.2,0.2,0.6,0.6" />
</DrawingGroup>
</DrawingBrush.Drawing>
</DrawingBrush>
</Canvas.Background>
</Canvas>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.