【求助】用GDI+绘制Path的难题。加急~~~~~~~~~~~
在项目里面 需要使用GDI+绘制一些图形,想要的图形效果如下:
这个图形我使用的是Graphics.DrawPath 的方法绘制的,创建 GraphicsPath 对象,通过AddLine不断的添加8条线段,最后组合的这个GraphicsPath ,然后绘制出来的,追加线段你的方式如下:
点2 和点3 、点5 点11、点9 点8、他们两个点之间被追加连接线了。
是不是需要设置什么属性,来控制它让它不去追加连接线呢??
求指教,因为需要,得使用GraphicsPath对象(因为要填充内部颜色的),点的顺序也不能改变(要和安卓应用程序的点的次序 保持一致)。所以需要限制。
[解决办法]
了解什么叫做“路径闭合”。
程序执行得一点也没有错,是你概念错了。
程序不骗人,往往是我们自己。
[解决办法]
var g = CreateGraphics();
g.DrawPath(new Pen(Color.Black, 3), gPath);
var path1 = new GraphicsPath(gPath.PathPoints, Enumerable.Repeat((byte)1, gPath.PointCount).ToArray());
g.FillPath(new SolidBrush(Color.Pink), path1);