public class Converter
|
{
|
public enum enumImageTypes
|
{
|
Bitmap,
|
Jpeg,
|
Gif,
|
Tiff,
|
Png
|
}
|
|
public string ImagePath;
|
public enumImageTypes ImageType;
|
public int Quality;
|
|
public Converter()
|
{
|
this.Quality = 100;
|
}
|
public Converter(string inImagePath, enumImageTypes inImageType) : this(inImagePath, inImageType, 100)
|
{
|
}
|
public Converter(string inImagePath, enumImageTypes inImageType, int inQuality)
|
{
|
this.ImagePath = inImagePath;
|
this.ImageType = inImageType;
|
this.Quality = inQuality;
|
}
|
|
public void Convert()
|
{
|
Bitmap bitmap = new Bitmap(ImagePath);
|
ImageCodecInfo[] imgCodecs = ImageCodecInfo.GetImageEncoders();
|
|
EncoderParameters imgParams = new EncoderParameters(1);
|
EncoderParameter imgQuality = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, Quality);
|
string imgExt;
|
|
imgParams.Param[0] = imgQuality;
|
|
imgExt = imgCodecs[(int)ImageType].FilenameExtension;
|
imgExt = imgExt.Substring(1, imgExt.Length - 1);
|
|
string fullpath = ImagePath.Substring(0, ImagePath.Length - 4) + imgExt.Split(;)[0].ToLower().Replace(i, i);
|
|
bitmap.Save(fullpath, imgCodecs[(int)ImageType], imgParams);
|
bitmap.Dispose();
|
}
|
|
public string imagePath
|
{
|
get { return this.ImagePath; }
|
set { this.ImagePath = value; }
|
}
|
public enumImageTypes imageType
|
{
|
get { return this.ImageType; }
|
set { this.ImageType = value; }
|
}
|
public int quality
|
{
|
get { return this.Quality; }
|
set { this.Quality = value; }
|
}
|
| } |