.net BitMap生成图片

先创建一个方法,此方法为获得编码器

//获得编码器的函数
public static ImageCodecInfo GetEncoderInfo(String mimeType)
{
    int j;
    ImageCodecInfo[] encoders;
    encoders = ImageCodecInfo.GetImageEncoders();
    for (j = 0; j < encoders.Length; ++j)
    {
        if (encoders[j].MimeType == mimeType)
            return encoders[j];
    }
    return null;
}

接下来把BitMap生成图片,并的到图片路径

public static string ImagePath(Bitmap img)
{
	//获取编码器
	ImageCodecInfo myImageCodecInfo;
	//获得JPEG格式的编码器
	myImageCodecInfo = GetEncoderInfo("image/jpeg");
	//设置图像质量
	System.Drawing.Imaging.Encoder myEncoder;
	EncoderParameter myEncoderParameter;
	EncoderParameters myEncoderParameters;
	myEncoder = System.Drawing.Imaging.Encoder.Quality;
    myEncoderParameters = new EncoderParameters(1);
    //设置质量 数字越大质量越好,但是到了一定程度质量就不会增加了,MSDN上没有给范围,只说是32为非负整数
    myEncoderParameter = new EncoderParameter(myEncoder, 100L);
    myEncoderParameters.Param[0] = myEncoderParameter;
    //保存图像
    string path = System.AppDomain.CurrentDomain.BaseDirectory;  //项目的基目录
    string imgUrl = @"/Content/Upload/" + DateTime.Now.ToString("yyyyMMddHHmmssfff") + ".jpg";  //图片的相对路径
    //img.Save()方法的第一个参数必须为绝对路径
    img.Save(path+imgUrl, myImageCodecInfo, myEncoderParameters);
    return imgUrl;
}

在这里插入图片描述
扫码关注公众号,一起学习进步!这里或许有你想要的。

发布了2 篇原创文章 · 获赞 0 · 访问量 25

猜你喜欢

转载自blog.csdn.net/qq_22325259/article/details/104522719