對於我的這個應用程序的開發時間,我一直在使用畫布3D模型的渲染。這已帆布,到現在爲止,已經代表這個XAML:WPF畫布 - 具有漸變和圖像的背景?
<Canvas x:Name="modelCanvas" Grid.Row="0">
<Canvas.Background>
<RadialGradientBrush>
<GradientStop Color="#FFDED9D9" Offset="1"/>
<GradientStop Color="White" Offset="0.007"/>
</RadialGradientBrush>
</Canvas.Background>
</Canvas>
我想圖像添加到這個背景,以及。我嘗試添加<ImageBrush ImageSource="/Images/bg2.png"/>
作爲Canvas.Background
一個孩子,但是這顯然沒有,因爲只有一個刷子可以用來設置背景。有沒有什麼合併刷子的方式?這個責任可能落在視口上嗎?我希望保持這個圖像完全獨立於渲染環境。
雖然理想的解決方案,這個問題可以在XAML來解決,我開發的C#項目,如果涉及到這一點。
目前還不清楚你想要達到的目標。圖像只是部分透明的漸變疊加層,或者您可能想要在圖像不透明度中使用漸變效果? – Clemens
@Clemens圖像部分透明,意味着疊加在漸變上。一個明顯的選擇是在圖像編輯器中製作這樣的圖像,但我想避免這種解決方案。 – jah
_「有沒有合併畫筆的方法?」_ - 我不知道內置的「合成畫筆」類型。但是,您可以使用'DrawingBrush'將_drawing_對象合併到可用作背景的單個畫筆中。你可以使用'DrawingGroup'來組合'ImageDrawing'和'GeometryDrawing',後者使用你的'RadialGradientBrush'。將'DrawingBrush.Drawing'設置爲'DrawingGroup',瞧,你可以使用一個單刷作爲背景。您也可以使用Clemens發佈的答案。無論哪種方式,您都需要確保將圖像包含在構建中。 –