私がそのようなものを描くとき(ここではランダムな絵だけ):
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
DrawingVisual visual = new DrawingVisual();
DrawingContext context = visual.RenderOpen();
Pen pen = new Pen(Brushes.Black, 1);
context.DrawEllipse(Brushes.YellowGreen, pen, new Point(0,0), 40, 40);
for (int i = 0; i <= 100 - 1; i++)
context.DrawLine(new Pen(Brushes.Black, 1), new Point(0, i), new Point(i, i));
context.Close();
RenderTargetBitmap bmp = new RenderTargetBitmap(100, 100, 96, 96, PixelFormats.Pbgra32);
bmp.Render(visual);
image1.Source = bmp;
}
}
DrawLine と DrawEllipse の色が混ざります。(ペンを使用するのは DrawLine のみであり、ブラシを使用する Rectangle や Ellipse などの他のフォームではないことがわかりました)。不思議なことに、基礎となるグリッドの背景 (argh) の LinearGradientBrush からの色でも。 それらをそれぞれ完全な不透明度で z オーダーにしたいと思います。
XAML コードは次のとおりです。
<Window x:Class="WpfApplication2.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Image Name="image1" Stretch="None" />
</Window>
助けてくれてありがとう。