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

原文地址:https://www.cnblogs.com/wangbg/p/10930074.html

时间: 2024-08-06 16:46:20

netcore使用ImageSharp裁切图片的相关文章

导入通道图 进行自适应裁切图片

// 测试打开一个文件var fileref = new File ("/E/work/没有图片提交/2014/2014.5.19/G20/部件渲染测试/png/tianji_1-41001_bujian35.png")var docref = app.open (fileref) // 打印路径 // 打印路径 //alert(app.path) // 实现对图片的设置 设置为 400 * 400 像素//docref.resizeImage (400,400) // 这里是启动的作

canvas压缩、裁切图片和格式转换的方法

按照大小压缩图片,或者按照特定分辨率裁切图片,转为blob数据.自动处理ios中可能存在的照片偏差90°问题. 例如,获取300*300大小的头像,实现以下效果: 使用方式: <!-- 引入js文件 --> <script type="text/javascript" src="./compressImage.js"></script> <!-- input标签 --> <input type="fil

前端裁切图片插件之cropper介绍

给大家介绍一个前端非常实用的依赖于jquery的图片裁切插件cropper. 因为前端无法做到图片的裁切,所以实际中需要用cropper和后台的GraphicsMagick相互配合. 先贴上cropper的网址https://fengyuanchen.github.io/cropperjs/和github地址:https://github.com/fengyuanchen/cropper 第一步:下载cropper: npm install cropper. 第二部:引入依赖包和插件包: <sc

通过cocos裁切图片,将大图分为小图

游戏要用动画,美工还没做出来,于是,从网上找来了几张图,不过图是JavaME时代的图,动画都是靠裁切来显示的,于是想将大图分割成小图来用. 图片规格:图中每个小图的大小是相等的,基本上都是正行,整列的. 上代码: const char * CutNormalImage::IMAGE_FORMAT_NAME = "image_ (%d).png" ; const char * pSaveImageFromar = "image_%d_%d_%d.png" ; int

ipcloud上传裁切图片,保存为base64再压缩传给后台

<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="viewport" content="maximum-scale=1.0,minimum-scale=1.0,user-scalable=0,width=device-width,initial-scale=1.0"/> <meta name="

ImageSharp跨平台图片处理

添加nuget引用 SixLabors.ImageSharp 和SixLabors.ImageSharp.Drawing 暂时只实现了缩略图..<pre>using SixLabors.ImageSharp;using SixLabors.ImageSharp.Formats;using SixLabors.ImageSharp.Processing namespace Ace{public class ImageSharpHelper { /// 生成缩略图 public static vo

Android 图片裁切框架 uCrop 的用法

1 uCrop简介 最近项目中用到了图片裁剪功能,于是百度了一下,发现了uCrop这个框架,这个框架的星星数很多,就决定使用这个框架 uCrop的Github地址:https://github.com/Yalantis/uCrop uCrop的特点: 裁剪框不动,图片动 图片可以旋转,缩放 支持各种比例裁剪框 uCrop的效果图(来自其Github): 2 集成uCrop (1) uCrop集成方法: compile 'com.yalantis:ucrop:1.4.1' (2) 修改当前项目的b

新修正的 Ajax PHP 图片裁切-来自www.srcfans.com开源代码

Ajax PHP Image Cut PHP图片裁切,图片裁切之生成缩略图部分和预览功能的实现,这是一个关于PHP Ajax裁切图片并在服务器端生成新图片的简单例子,这次不是jquery,而是使用另一个有名的JS插件:prototype,同样具有很好的性能.本图片裁切在 IE11 , FireFox 5 , Chrome55下测试通过(Opear 下有一点点问题,剪切框的初始位置不对,这个问题研究至今一直没解决掉,抱歉!). 在线演示:http://www.srcfans.com/demo/im

根据图片URL裁切并生成缩略图

package jtest; import java.awt.Graphics; import java.awt.Image; import java.awt.Toolkit; import java.awt.image.BufferedImage; import java.awt.image.CropImageFilter; import java.awt.image.FilteredImageSource; import java.awt.image.ImageFilter; import