我目前在" Visual Studio 2015 C#"中设计了一个程序。并希望实现圆形图片框。在程序中有图片框,从网上下载源图像。在它的默认状态下,"图片框"是方形的。我想知道如何改变"图片框的形状"到一个圆圈。这样,加载时的图像将是圆形而不是方形或矩形。
我已经想出了如何缩小图像质量并保持其质量并使其居于中心,但我不知道如何更改图像"变成一个圆圈。
我找到了几种方法,但不幸的是,通过这种方法,圆圈不是平滑的,而是像素化的。
这是我想要的一个例子:http://i.imgur.com/kaOfTFU.png
答案 0 :(得分:4)
您可以创建路径(即圆形或任何您想要的形状),并将图片框区域设置为该路径。这是一个圆圈的例子:
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
path.AddEllipse(0, 0, pictureBox1.Width, pictureBox1.Height);
pictureBox1.Region = new Region(path);
}
}
这个StackExchange帖子有如何使图片框的任何路径平滑:
Possible to have anti-aliasing when drawing a clipped image?