C#修改图片尺寸以及不改变原有图片比例
作者:syd二宝
文章介绍了如何使用C#中的Bitmap类来修改图片尺寸,同时保持原有的图片比例,作者分享了自己的经验,并鼓励读者参考和使用
C#修改图片尺寸不改变原有图片比例
C#使用BitMap修改图片尺寸
修改图片大小,不改变原有图片比例

修改后图片

代码
public static void image()
{
System.Drawing.Image img = System.Drawing.Image.FromFile("图片路径");
Bitmap bt = new Bitmap(img);
//获取图片位置颜色
Color cl = bt.GetPixel(10, 10);
int Width = img.Width;
int Height = img.Height;
int marginx = Height / 2;
float dpiX = img.HorizontalResolution;
float dpiY = img.VerticalResolution;
//设置新图的大小
Bitmap bitmap= new Bitmap(Width, Width, PixelFormat.Format24bppRgb);
//设置位图文件的水平和垂直分辨率,与Img一致
bitmap.SetResolution(dpiX, dpiY);
//在位图文件上填充一个新图
Graphics graphics = Graphics.FromImage(bitmap);
System.Drawing.Rectangle Rec = new System.Drawing.Rectangle(0, 0, Width, Width);
//定义颜色
SolidBrush mySolidBrush = new SolidBrush(cl);
//将新图填充为获取原图位置的颜色
graphics.FillRectangle(mySolidBrush, Rec);
//向新图中填充Img
graphics.DrawImage(img, 0, marginx, Rec, GraphicsUnit.Pixel);
graphics.Dispose();
GC.Collect();
bitmap.Save("保存图片路径", System.Drawing.Imaging.ImageFormat.Jpeg);
}总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
