知识大全 利用C#转换图片格式,还可转换为ico
Posted 知
篇首语:知识象烛光,能照亮一个人,也能照亮无数人。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 利用C#转换图片格式,还可转换为ico相关的知识,希望对你有一定的参考价值。
利用C#转换图片格式,还可转换为ico 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
注意:转换为ICO后效果不好
源代码:
using System;
using System Collections Generic;
using System Text;
using System Drawing;
using System Drawing Imaging;
using System IO;
namespace paomiangege
public class ImageConvert
private int ICON_W = ;
private int ICON_H = ;
public ImageConvert()
//fileinpath origaly picture file path fileoutpath save filepath index the ImageFormat you want to convert to
public string Convert(string fileinpath string fileoutpath string index)
try
Bitmap bitmap = new Bitmap(fileinpath);
index = index ToLower();
switch (index)
case jpg : bitmap Save(fileoutpath ImageFormat Jpeg); break;
case jpeg : bitmap Save(fileoutpath ImageFormat Jpeg); break;
case bmp : bitmap Save(fileoutpath ImageFormat Bmp); break;
case png : bitmap Save(fileoutpath ImageFormat Png); break;
case emf : bitmap Save(fileoutpath ImageFormat Emf); break;
case gif : bitmap Save(fileoutpath ImageFormat Gif); break;
case wmf : bitmap Save(fileoutpath ImageFormat Wmf); break;
case exif : bitmap Save(fileoutpath ImageFormat Exif); break;
case tiff :
Stream stream = File Create(fileoutpath);
bitmap Save(stream ImageFormat Tiff);
stream Close();
break;
case ico :
Icon ico;
Stream stream = File Create(fileoutpath);
ico = BitmapToIcon(bitmap false);
ico Save(stream); // save the icon
stream Close();
; break;
default: return Error! ;
return Success! ;
catch(Exception ex)
return ex Message;
public string Convert(string fileinpath string fileoutpath string index int width int height)
if (width <= || height <= )
return error!size illegal! ;
try
Bitmap mybitmap = new Bitmap(fileinpath);
Bitmap bitmap = new Bitmap(mybitmap width height);
index = index ToLower();
switch (index)
case jpg : bitmap Save(fileoutpath ImageFormat Jpeg); break;
case jpeg : bitmap Save(fileoutpath ImageFormat Jpeg); break;
case bmp : bitmap Save(fileoutpath ImageFormat Bmp); break;
case png : bitmap Save(fileoutpath ImageFormat Png); break;
case emf : bitmap Save(fileoutpath ImageFormat Emf); break;
case gif : bitmap Save(fileoutpath ImageFormat Gif); break;
case wmf : bitmap Save(fileoutpath ImageFormat Wmf); break;
case exif : bitmap Save(fileoutpath ImageFormat Exif); break;
case tiff :
Stream stream = File Create(fileoutpath);
bitmap Save(stream ImageFormat Tiff);
stream Close();
break;
case ico :
if (height > || width > )//ico maxsize *
return Error!Size illegal! ;
Icon ico;
ICON_H = height;
ICON_W = width;
Stream stream = File Create(fileoutpath);
ico = BitmapToIcon(mybitmap true);
ico Save(stream); // save the icon
stream Close();
; break;
default: return Error! ;
return Success! ;
catch (Exception ex)
return ex Message;
private Icon BitmapToIcon(Bitmap obm bool preserve)
Bitmap bm;
// if not preserving aspect
if (!preserve) // if not preserving aspect
bm = new Bitmap(obm ICON_W ICON_H); // rescale from original bitmap
// if preserving aspect drop excess significance in least significant direction
else // if preserving aspect
Rectangle rc = new Rectangle( ICON_W ICON_H);
if (obm Width >= obm Height) // if width least significant
// rescale with width based on max icon height
bm = new Bitmap(obm (ICON_H * obm Width) / obm Height ICON_H);
rc X = (bm Width ICON_W) / ; // chop off excess width significance
if (rc X < ) rc X = ;
else // if height least significant
// rescale with height based on max icon width
bm = new Bitmap(obm ICON_W (ICON_W * obm Height) / obm Width);
rc Y = (bm Height ICON_H) / ; // chop off excess height significance
if (rc Y < ) rc Y = ;
bm = bm Clone(rc bm PixelFormat); // bitmap for icon rectangle
// create icon from bitmap
Icon icon = Icon FromHandle(bm GetHicon()); // create icon from bitmap
bm Dispose(); // dispose of bitmap
return icon; // return icon
cha138/Article/program/net/201311/12504
相关参考
C#转换图片文件格式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 将图片转换为另一种格式的图像
怎么将自己的图片设定成桌面图示?:bitbug./这个网站有,直接把电脑上的图片转换为ISO图示然后档案上面点右键-属性-更改图示。选择刚才转换的图示就好怎么用自己的图片当桌面图示?图示是ICO格式的
如何将C#时间格式转换为中文格式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 首先使用Java
知识大全 x4的图片能转换成jpg格式吗?请回答具体一些,谢谢
coreldrawx4的图片能转换成jpg格式吗?请回答具体一些,谢谢!可以。文件>导出,选择jpg格式就可以了。怎么把jpg格式的图片转换成gft格式的图片知道的回答下谢谢了用格式工厂,轻松转
把图象文件转换成XML格式文件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!利用NET框架下的Fr
怎样能将JPG格式的图片转换为max格式呢?可以转换吗?求解答!谢谢 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快
js将long日期格式转换为标准日期格式 复制代码代码如下:cha138/Article/program/Java/JSP/201405/30753
PHP中数组转换为XML格式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 最近公司要做一个AP
资料库SQL语句表格式转换 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!资料库SQL语句表格式转换
知识大全 Jsp结合XML+XSLT将输出转换为Html格式
Jsp结合XML+XSLT将输出转换为Html格式 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!