关于图像生成略缩图的问题,
2009-08-30 10:43
281 查看
家好:
我上次问了一次关于图像生成略缩图的问题 panyee(快乐王子) 给我的回复如下,不过我水平太低,实际中我还是没做成功。有哪位高手能有这方面现成的代码可以介鉴一下吗,如果可以的话,我们本着互相帮助,互相学习的态度,我把我的这个http://www.htjj.com/index.aspx 人才网源代码(C#+sqlserver2000)做交换。
//原始图片名称
string originalFilename = "c:\\222.jpg";
//生成的高质量图片名称
string strGoodFile = "c:\\222-small-good.jpg";
//生成的低质量图片名称
string strBadFile = "c:\\222-small-bad.jpg";
//缩小的倍数
int iScale = 3;
//从文件取得图片对象
System.Drawing.Image image = System.Drawing.Image.FromFile(originalFilename);
//取得图片大小
System.Drawing.Size size = new Size(image.Width / iScale , image.Height / iScale);
//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width,size.Height);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Blue);
//在指定位置画图
g.DrawImage(image, new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height),
new System.Drawing.Rectangle(0, 0, image.Width,image.Height),
System.Drawing.GraphicsUnit.Pixel);
//保存高清晰度的缩略图
bitmap.Save(strGoodFile, System.Drawing.Imaging.ImageFormat.Jpeg);
//取得原图像的普通缩略图
System.Drawing.Image img = image.GetThumbnailImage(image.Width / iScale, image.Height / iScale, null, IntPtr.Zero);
//保存普通缩略图
img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);
g.Dispose();
MessageBox.Show("生成完毕");
http://topic.csdn.net/t/20030819/14/2163677.html
我上次问了一次关于图像生成略缩图的问题 panyee(快乐王子) 给我的回复如下,不过我水平太低,实际中我还是没做成功。有哪位高手能有这方面现成的代码可以介鉴一下吗,如果可以的话,我们本着互相帮助,互相学习的态度,我把我的这个http://www.htjj.com/index.aspx 人才网源代码(C#+sqlserver2000)做交换。
//原始图片名称
string originalFilename = "c:\\222.jpg";
//生成的高质量图片名称
string strGoodFile = "c:\\222-small-good.jpg";
//生成的低质量图片名称
string strBadFile = "c:\\222-small-bad.jpg";
//缩小的倍数
int iScale = 3;
//从文件取得图片对象
System.Drawing.Image image = System.Drawing.Image.FromFile(originalFilename);
//取得图片大小
System.Drawing.Size size = new Size(image.Width / iScale , image.Height / iScale);
//新建一个bmp图片
System.Drawing.Image bitmap = new System.Drawing.Bitmap(size.Width,size.Height);
//新建一个画板
System.Drawing.Graphics g = System.Drawing.Graphics.FromImage(bitmap);
//设置高质量插值法
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.High;
//设置高质量,低速度呈现平滑程度
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
//清空一下画布
g.Clear(Color.Blue);
//在指定位置画图
g.DrawImage(image, new System.Drawing.Rectangle(0, 0, bitmap.Width, bitmap.Height),
new System.Drawing.Rectangle(0, 0, image.Width,image.Height),
System.Drawing.GraphicsUnit.Pixel);
//保存高清晰度的缩略图
bitmap.Save(strGoodFile, System.Drawing.Imaging.ImageFormat.Jpeg);
//取得原图像的普通缩略图
System.Drawing.Image img = image.GetThumbnailImage(image.Width / iScale, image.Height / iScale, null, IntPtr.Zero);
//保存普通缩略图
img.Save(strBadFile, System.Drawing.Imaging.ImageFormat.Jpeg);
g.Dispose();
MessageBox.Show("生成完毕");
http://topic.csdn.net/t/20030819/14/2163677.html
相关文章推荐
- 关于Doxygen中的中文乱码问题 及 无法用dot生成png图像问题
- 关于修改图像DPI的问题,生成缩略图程序优化
- 关于静态图像生成句子描述的问题
- 关于visual studio 2013生成exe文件找不到问题
- 嵌入式 SDL把字符串生成位图,关于位图的数据大小问题
- 关于Linux下I2C驱动的Probe方式没有自动生成i2c_client且没有自动调用i2c_driver的.probe指向的函数的问题解决
- 一直没搞定crossdev生成的环境下关于库依赖的问题
- 关于jquery datatable序号列没法生成的问题及解决
- 关于java生成exe的问题
- 关于android studio不自动生成apk的问题
- 关于Android4.+(4.0~4.2.1)上无损、透明webp图像不显示问题分析
- 关于使用vc++调用matlab生成的dll传递数组的问题
- Android图像处理之Bitmap 生成图片 解析 保存文件 获取 问题
- 关于MSSQL2000 SP4 和SP3 生成的备份文件不兼容的问题
- 关于ionic安装环境生成apk文件问题
- 关于打包java project项目 生成jar的一些问题
- 关于java生成图片验证码的问题
- 关于生成json串的问题
- 关于opencv在代码正确的情况下,无法显示图像的问题。
- 关于android开发添加菜单XML文件之后无法在R.java中生成ID的问题