サンプルのWinformsアプリケーションでベジェ曲線をペイントしようとしています。
ベジェポイントを計算してから、DrawImageを使用してペイントし、各ポイントにカスタムイメージブラシを描画しています。
ただし、期待した結果が正確に得られていません。結果の曲線は、曲がるポイントで滑らかではありません(Y座標は1pxで増減することに注意してください)。
これは、ブラシツールを使用して「photoshop」ですばやくペイントされた「素敵な」曲線の例です。
この種の「アンチエイリアス」を実現する方法を知っている人はいますか?
私は基本的にこれをやっています:
using(var g = Graphics.FromImage(bitmap))
{
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.InterpolationMode = InterpolationMode.HighQualityBicubic;
//points - an array with calculated beziere curve points
//image - the "image brush" that is painted at each curve point
foreach (var p in points)
{
g.DrawImage(image, p);
g.Flush();
}
}
ありがとうございました!