时间:2021-05-20
为了让大家知道下面内容是否是自己想要的,我先发效果图。
好了,那就开始贴代码了
以下为一个按钮的事件,为裁剪准备图片、裁剪路径、保存路径
复制代码 代码如下:
private void button1_Click(object sender, EventArgs e)
{
GraphicsPath path = new GraphicsPath();
Point[] p = {
new Point(424,244),
new Point(240,440),
new Point(340,552),
new Point(550,526),
new Point(478,366),
new Point(348,660),
new Point(424,244)
};
path.AddLines(p);
OpenFileDialog openFileDialog = new OpenFileDialog();
openFileDialog.Filter = @"Bitmap文件(*.bmp)|*.bmp|Jpeg文件(*.jpg)|*.jpg|所有合适文件(*.bmp,*.jpg)|*.bmp;*.jpg";
openFileDialog.FilterIndex = 3;
openFileDialog.RestoreDirectory = true;
if (DialogResult.OK == openFileDialog.ShowDialog())
{
Bitmap bit = (Bitmap)Bitmap.FromFile(openFileDialog.FileName, false);
Bitmap newBit = null;
BitmapCrop(bit, path, out newBit);
newBit.Save(@"C:\Users\Public\Pictures\Sample Pictures\沙漠22.jpg");
}
}
以下为裁剪的关键代码
复制代码 代码如下:
/// <summary>
/// 图片截图
/// </summary>
/// <param name="bitmap">原图</param>
/// <param name="path">裁剪路径</param>
/// <param name="outputBitmap">输出图</param>
/// <returns></returns>
public static Bitmap BitmapCrop(Bitmap bitmap, GraphicsPath path, out Bitmap outputBitmap)
{
RectangleF rect = path.GetBounds();
int left = (int)rect.Left;
int top = (int)rect.Top;
int width = (int)rect.Width;
int height = (int)rect.Height;
Bitmap image = (Bitmap)bitmap.Clone();
outputBitmap = new Bitmap(width, height);
for (int i = left; i < left + width; i++)
{
for (int j = top; j < top + height; j++)
{
//判断坐标是否在路径中
if (path.IsVisible(i, j))
{
//复制原图区域的像素到输出图片
outputBitmap.SetPixel(i - left, j - top, image.GetPixel(i, j));
//设置原图这部分区域为透明
image.SetPixel(i, j, Color.FromArgb(0, image.GetPixel(i, j)));
}
else
{
outputBitmap.SetPixel(i - left, j - top, Color.FromArgb(0, 255, 255, 255));
}
}
}
bitmap.Dispose();
return image;
}
有了这个前台只需要获取用户的鼠标路径传到后台就可以。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例为大家分享了iOS将图片裁剪成圆形的具体代码,供大家参考,具体内容如下原图:圆形图片裁剪效果:裁剪成带边框的圆形图片:核心代码:#import@inte
WPS怎样裁剪图片?如果是有规则的图片,WPS容易裁剪,如果是不规则的图片,则不容易操作。下面我就找两类图片分类讲解,希望与你分享。软件名称:WPSOffice
以PPT2019为例,ppt中图片裁剪为不规则图形的步骤是: PPT就是PowerPoint的简称。PowerPoint最初并不是微软公司发明的,而是美国名校
ppt插入的图片可以裁剪成多种样式,该怎么裁剪呢?下面我们就来看看裁剪图形的教程。软件名称:PowerPoint2017简体中文免费完整版软件大小:60.7MB
裁剪示例:最终裁剪成的图片:其中虚线框内就是要裁剪出来的图片,最终保存成100宽的图片。代码如下:复制代码代码如下:$src_path='1.jpg';//创建