注意:轉換為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 = 64;
private int ICON_H = 64;
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 <= 0 || height <= 0)
return "error!size illegal!";
try
{
Bitmap mybitmap = new Bitmap(fileinpath);
Bitmap bitmap = new Bitmap(mybitmap, width, height);
index = index.ToLower();
switch (index)
{
case "jp