WPF で複数の画像をキャンバスにレンダリングしようとしています。次の不自然な例では、次のコードを使用して予期しない動作を再現できました。
public class MyCanvas : Canvas
{
protect override void OnRender(DrawingContext drawingContext)
{
base.OnRender(drawingContext);
BitmapSource image = BitmapSource.Create(1, 1, 96, 96, PixelFormats.Indexed8, BitmapPalettes.Gray256, new byte[] { 0 }, 2);
drawingContext.DrawImage(image, new Rect(10, 10, 128, 128));
drawingContext.DrawImage(image, new Rect(10, 138, 128, 128));
}
}
これにより、次のような描画が行われます: 細い線で描画. ご覧のとおり、2 つの長方形の間に細い (おそらく 1 ピクセル) 幅の線があります。両方の長方形が接触する図を期待していました。
だから私の質問は: WPF が画像を感動的にレンダリングしないのはなぜですか?