netcore使用ImageSharp裁切图片

项目中需要对上传的图片进行裁切处理,发现之前的裁切方法不能跨平台使用了,于是乎找到了ImageSharp项目,项目地址https://github.com/SixLabors/ImageSharp,参考项目说明中的方法,很简单的几句话就完成了需求,感谢各位大牛做的的杰出贡献。

复制代码
        #region 图片处理

        /// <summary>
        /// 裁切图片大小
        /// </summary>
        /// <param name="imagePath">图片路径</param>
        /// <param name="maxSize">裁切尺寸</param>
        /// <param name="isCreateNew">是否另存</param>
        public static void CutImage(string imagePath, int maxSize, bool isCreateNew = false)
        {
            using (Image<Rgba32> image = Image.Load(imagePath))
            {
                if (isCreateNew == true)
                {
                    imagePath = imagePath.Insert(imagePath.Length - 4, "_" + maxSize);
                }
                if (image.Width > image.Height)
                {
                    if (image.Width > maxSize)
                    {
                        image.Mutate(x => x
                             .Resize(maxSize, maxSize / image.Width * image.Height));
                        image.Save(imagePath);
                    }
                }
                else
                {
                    if (image.Height > maxSize)
                    {
                        image.Mutate(x => x
                             .Resize(maxSize / image.Height * image.Width, maxSize));
                        image.Save(imagePath);
                    }
                }
            };
        }

        #endregion
复制代码

 

posted @   wangbg  阅读(1003)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示