C#压缩图片
SqlSer数据库设置保存图片字段类型为Image类型
对应保存
方法参数为图片路径,压缩后路径,压缩最大宽度,压缩最大高度
引用类型using System.Data; using System.Drawing; using System.IO;
\完整类
/// <summary>
/// 按比例缩放,图片不会变形,会优先满足原图和最大长宽比例最高的一项
/// </summary>
/// <param name="oldPath">图片路径</param>
/// <param name="newPath">压缩后路径</param>
/// <param name="maxWidth">压缩最大宽度</param>
/// <param name="maxHeight">压缩最大高度</param>
public static void CompressPrecent(string oldPath, string newPath, int maxWidth, int maxHeight)
{
System.Drawing.Image _sourceImg = System.Drawing.Image.FromFile(oldPath);
double _newW = maxWidth;
double _newH = maxWidth;
double percentWidth = (double)_sourceImg.Width > maxWidth ? maxWidth : _sourceImg.Width;
if (_sourceImg.Height * (double)percentWidth / _sourceImg.Width > maxHeight)
{
_newH = maxHeight;
_newW = maxHeight / (double)_sourceImg.Height * _sourceImg.Width;
}
else
{
_newW = percentWidth;
_newH = (percentWidth / _sourceImg.Width) * _sourceImg.Height;
}
System.Drawing.Image bitmap = new Bitmap((int)_newW, (int)_newH);
Graphics g = Graphics.FromImage(bitmap);
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
g.Clear(System.Drawing.Color.Transparent);
g.DrawImage(_sourceImg, new System.Drawing.Rectangle(0, 0, (int)_newW, (int)_newH),
new System.Drawing.Rectangle(0, 0, _sourceImg.Width, _sourceImg.Height), GraphicsUnit.Pixel);
_sourceImg.Dispose();
g.Dispose();
bitmap.Save(newPath, System.Drawing.Imaging.ImageFormat.Jpeg);
bitmap.Dispose();
}
初来乍到,请多多指教,大神勿喷。若有错误之处,欢迎指导
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgheieg
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13