我正在开发一个加载图像的应用程序,然后必须用鼠标在图像上方标记一些点。这些点应该在单独的图层上,即我不想修改图像数据。
最好的方法是什么?我当时在考虑使用DirectX,但我发现它已经过时了。 GDI +是否解决?
提前致谢
最佳答案
这个怎么样?
<Border>
<Border.Background>
<ImageBrush ImageSource="foo.jpg" />
</Border.Background>
<Canvas Background="Transparent"/>
</Border>
在背景中显示图像,然后将点绘制到位于该图像顶部的
Canvas
。编辑:
在C#中看起来像这样:
Border border = new Border();
Canvas canvas = new Canvas()
{
Background = Brushes.Transparent
};
grid.AddChild(border);
border.Child = canvas;
border.Background = new ImageBrush();
然后您只需要将图像加载到border.Backgound包裹在ImageBrush中即可。
关于c# - C#中的图像和几何,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1832452/