在vc下使用gdi+中Drawpath()傳回值為OutOfMemory,導緻GraphicsPath不能繪制到螢幕上 以下就是導緻這個問題的代碼
<span> </span>Graphics graphics(hdc);
//!!!!!!!!!!!!OutOfMemory
GraphicsPath path;
PointF p[3] = { PointF(0, 0), PointF(100, 100), PointF(200, 200) };
path.AddLines(&p[0], 2);
path.StartFigure();//想要添加的兩個圖形間不相連,可以使用這個方法
path.AddLines(&p[1], 1);
Pen pen(Color(255, 0, 0), 2);//設定畫筆的寬度為2
Status ss= graphics.DrawPath(&pen, &path);//ss的值為<span style="font-family: Arial, Helvetica, sans-serif;">OutOfMemory</span>
以上代碼當筆寬大于1就會出現這個問題,導緻這個問題還有其他兩個因素1:path.StartFigure(); 2.path.AddLines(&p[1],1)添加了一個點的線
在網上搜了下沒有解決這個問題的方法(反正我沒找到!
),于是自己發了點時間解決了這個問題。
用次部落格紀念我逝去的時間