我需要使用 C# 在 Windows 窗体中创建一些简单的图形。简单我的意思是线、圆等。但是,当我画一个实心圆时,边缘不是平滑的(正如使用方形像素绘制圆时所预期的那样),但是当在 a 中绘制具有相同像素数的同一个圆时它看起来很完美的矢量程序。为了这个例子,我一直在 Inkscape 中绘图。
也许矢量软件使用某种渲染函数来平滑颜色,但是这在 C# 中是否可能而无需创建太多代码?这是一个代码示例,Graphics
用于创建要在其上绘制的画布。
private void StatGraphicsPanel_Paint(object sender, PaintEventArgs e)
{
Graphics canvas = e.Graphics;
Brush brush = Brushes.Aqua;
canvas.FillEllipse(brush, 0, 0, 10, 10);
}
解决方案 此代码可以解决问题:
private void StatGraphicsPanel_Paint(object sender, PaintEventArgs e)
{
Graphics canvas = e.Graphics;
canvas.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
Brush brush = Brushes.Aqua;
canvas.FillEllipse(brush, 0, 0, 10, 10);
}