我需要解析坐标的XML文件并创建一个.png(从头开始),我在其中绘制坐标之间的路径。当路径改变方向时,我也需要能够平滑角落(可能使用贝塞尔曲线)。
如何在C#中以编程方式执行此操作?
由于
答案 0 :(得分:3)
C#没有任何图形概念 - 你需要选择一个矢量图形库来为你完成工作。由于你已经在.NET中,我建议使用WPF构建图像,使用Bitmap类将最终结果导出为PNG。
答案 1 :(得分:3)
您可以使用Graphics对象和DrawBezier方法绘制到位图中: http://msdn.microsoft.com/en-us/library/system.drawing.graphics.drawbezier.aspx
然后使用Save方法将其存储为png。
我现在无法粘贴您的代码,因为我没有开发环境来制作样本,但它应该是这样的:
使用您需要的尺寸创建Bitmap:
Bitmap bitmap = new Bitmap(width,height);
从位图中获取Graphics对象:
Graphics graphics= Graphics.FromImage(bitmap);
使用图形对象绘制(如果是你的情况,使用DrawBezier)
graphics.DrawBezier(pen, a,b,c);
调用指示png格式的Save方法:
bitmap.Save(path,ImageFormat.Png);