设置Graphics.DrawPath绘制方法的起点

本文关键字:起点 方法 绘制 Graphics DrawPath 设置 | 更新日期: 2023-09-27 18:00:15

我当前正在使用GraphicsPath将曲线添加到graphic中。

我不确定应该更改哪个对象以及如何使曲线从我选择的点X、Y开始(而不是0,0)。

PointF[] p = // xxx the code to populate the array with points
GraphicsPath path = new GraphicsPath();
path.AddCurve(p);
using (var bitmap = new Bitmap(100, 100, PixelFormat.Format24bppRgb))
{
   using (var g = Graphics.FromImage(bitmap)) 
      g.DrawPath(Pens.White, path);
   MemoryStream ms = new MemoryStream();
   bitmap.Save(ms, ImageFormat.Png);
}

我应该设置哪个对象的初始起点,这样它就不会从0,0开始绘制线??

提前感谢。

设置Graphics.DrawPath绘制方法的起点

来自MSDN GraphicsPath.AddCurve:

曲线从偏移参数指定的数组中的点开始,包括numberOfSegments指定的点(线段)数量

http://msdn.microsoft.com/es-es/library/ms142523(v=vs.110).aspx

所以如果你使用没有偏移的重载,你可以假设偏移是0,所以它将在p[0]开始绘制

如果您的意思是要设置图形偏移(替换坐标系0,0),则可以使用Graphics.TranslateTransform.

应用变换