[转]c# 画图中bitmap类措置惩罚惩罚出图片时,存储的注意事项

时间:2021-09-10 02:10:54

今天查找以前写的画图措施,想完善一下,发明

图片添加文字水印时候会有些模糊,出格是小字体的时候出格模糊,

颠末一番调适,终于发明了问题

帖上代码,警示本身

System.Drawing.Image image = System.Drawing.Image.FromFile(Server.MapPath("b1.jpg"));
        Bitmap bitWaterMark = new Bitmap(image.Width, image.Height);
        Graphics g = Graphics.FromImage(bitWaterMark);

g.DrawImage(image, 0, 0, image.Width, image.Height);

Font f = new Font("verdana", 14);
        Brush c = new SolidBrush(Color.FromName("red"));
        string addtext = "测试字体啊";
        g.DrawString(addtext, f, c, 10, 1);
        g.Dispose();
        image.Dispose();
        System.IO.MemoryStream ms = new System.IO.MemoryStream();
        bitWaterMark.Save(ms, ImageFormat.Bmp);

//bitWaterMark.Save(ms, ImageFormat.Jpeg);
        //从头生成Image东西 
        System.Drawing.Image img2 = System.Drawing.Image.FromStream(ms);
        //返回新的Image东西 
        //bitWaterMark.Save(Server.MapPath("test.jpg"));
        img2.Save(Server.MapPath("test.jpg"));

//img2.Save(Server.MapPath("test.jpg"), ImageFormat.Jpeg);
        bitWaterMark.Dispose();

红色字体部分是问题地址,今天才发明这个问题,我想如果用C#画图的伴侣也会发明这个问题

用bitemap类不管是存储到文件,还是存储为数据流来措置惩罚惩罚 image 东西时候,如果 加上ImageFormat.Jpeg

城市让图片变模糊,真是很诡异,如果 必需要存储为数据流,那么用ImageFormat.Bmp存储然后生存,,生成的图片也会比ImageFormat.Jpeg要清晰的多,但问题终于解决了,生成的图片很清晰了。

标签:

原文地点:https://www.cnblogs.com/vic_lu/p/8983802.html