当前位置: 首页 > news >正文

C#上传图片后压缩

上传的图片尺寸不一,手机拍照的有2000*2000像素的,对实际使用来说
文件尺寸太大,文件也有近4M

下面是直接压缩的方法

1、安装包
Magick.NET-Q16-AnyCPU

2、上代码

/// <summary>
/// 缩放图片
/// </summary>
/// <param name="fullPath">文件地址</param>
/// <param name="maxWidth">设置目标图片的最大宽度</param>
private void SuoFangImg(string fullPath, int maxWidth)
{
try
{
fullPath = Directory.GetCurrentDirectory() + "/wwwroot" + fullPath;
//fullPath为图片路径
using (MagickImage Magickimage = new MagickImage(fullPath))
{//int maxWidth = 600; // 设置目标图片的最大宽度为1300像素Magickimage.Quality = 50;// 100;//进行无损压缩// 计算新的尺寸,保持宽高比int width = (int)Magickimage.Width;int height = (int)Magickimage.Height;int newWidth = width;int newHeight = height;// 如果原始宽度大于最大宽度,则计算新的宽度和高度  if (width > maxWidth){// 保持宽高比,计算新的宽度和高度  double aspectRatio = (double)height / (double)width;newWidth = maxWidth;newHeight = (int)(maxWidth * aspectRatio);}// 缩放图片  Magickimage.Resize((uint)newWidth, (uint)newHeight);Magickimage.Write(fullPath);Magickimage.Dispose();}}catch (Exception ex){_log.Error("压缩缩放图片出现异常:" + ex.Message);_log.Info("图片地址:" + fullPath);}
}

完美解决

最近在看一款汉泰示波器,操作来说还是比较易上手的,还有讲解视频。

相关文章:

  • Java处理动态的属性:字段不固定、需要动态扩展的 JSON 数据结构
  • FastAPI 项目配置管理
  • C/C++ 面试复习笔记(2)
  • << C程序设计语言第2版 >> 练习 1-23 删除C语言程序中所有的注释语句
  • 高级数据结构与算法期末考试速成记录
  • 6个月Python学习计划 Day 9 - 函数进阶用法
  • ros2工程在普通用户下正常编译但root下编译无法成功也不会自动停止
  • 历年南开大学计算机保研上机真题
  • flask入门
  • MySQL数据归档利器:pt-archiver原理剖析与实战指南
  • 阻止H5页面中键盘收起的问题
  • React从基础入门到高级实战:React 高级主题 - React Concurrent 特性:深入探索与实践指南
  • springboot文件上传下载
  • AgenticSeek,开源本地通用AI Agent,自主执行任务
  • 如何优化Hive的查询性能?请详细说明查询优化的各个层面(SQL优化、配置优化、资源优化等)和具体方法。
  • Oracle数据库性能优化的最佳实践
  • 数据结构 堆与优先级队列
  • 【数据库】数据库恢复技术
  • 使用 Cython 编译将.py文件加密成.so文件
  • Apptrace:APP安全加速解决方案
  • 潍坊专业网站建设多少钱/网站一般怎么推广
  • 厦门门户网站建设/昆山网站建设公司
  • 做3d在哪个网站上接单比较好/seo工作流程
  • 开发一个交易平台需要多少钱/百度优化
  • 石碣仿做网站/广州谷歌seo
  • 无网站做网赚/网络营销产品