你可以在FAQ中找到:
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=11392
public class Bmp2Jpeg
{
private long lQuality=50L;
private ImageCodecInfo myImageCodecInfo;
private EncoderParameters myEncoderParameters;
public Bmp2Jpeg(long Quality)
{
lQuality=Quality;
Ini();
}
private void Ini()
{
System.Drawing.Imaging.Encoder myEncoder;
EncoderParameter myEncoderParameter;
myImageCodecInfo = GetEncoderInfo( "image/jpeg ");
myEncoder = System.Drawing.Imaging.Encoder.Quality;
myEncoderParameters = new EncoderParameters(1);
myEncoderParameter = new EncoderParameter(myEncoder,lQuality);
myEncoderParameters.Param[0] = myEncoderParameter;
}
public Bmp2Jpeg()
{
Ini();
}
private static ImageCodecInfo GetEncoderInfo(String mimeType)
{
int j;
ImageCodecInfo[] encoders;
encoders = ImageCodecInfo.GetImageEncoders();
for(j = 0; j < encoders.Length; ++j)
{
if(encoders[j].MimeType == mimeType)
return encoders[j];
}
return null;
}
public byte[] BmpToJpegBuff(Bitmap bmpSrc)
{
MemoryStream msjpg=new MemoryStream();
bmpSrc.Save(msjpg, myImageCodecInfo, myEncoderParameters);
byte[] bjpeg=msjpg.ToArray();
return bjpeg;
}
public byte[] BmpToJpegBuff(byte[] bmpSrc)
{
MemoryStream ms=new MemoryStream(bmpSrc);
MemoryStream msjpg=new MemoryStream();
Bitmap myBitmap = new Bitmap(ms,false);
//myBitmap.Save( "c:\\temp\\ "+i.ToString()+ ".jpg ", myImageCodecInfo, myEncoderParameters);
myBitmap.Save(msjpg, myImageCodecInfo, myEncoderParameters);
byte[] bjpeg=msjpg.ToArray();
return bjpeg;
}
public Stream BmpToJpegStream(byte[] bmpSrc)
{
MemoryStream ms=new MemoryStream(bmpSrc);
MemoryStream msjpg=new MemoryStream();
Bitmap myBitmap = new Bitmap(ms,false);
//myBitmap.Save( "c:\\temp\\ "+i.ToString()+ ".jpg ", myImageCodecInfo, myEncoderParameters);
myBitmap.Save(msjpg, myImageCodecInfo, myEncoderParameters);
return msjpg;
}
public bool BmpToJpegFile(byte[] bmpSrc,string filename)
{
MemoryStream ms=new MemoryStream(bmpSrc);
Bitmap myBitmap=new Bitmap(ms,false);
myBitmap.Save(filename,myImageCodecInfo,myEncoderParameters);
return true;
}
public bool BmpToJpegFile1(Bitmap bmpSrc,string filename)
{
bmpSrc.Save(filename,myImageCodecInfo,myEncoderParameters);
return true;
}
}
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=11392
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=11392
public class Bmp2Jpeg
{
private long lQuality=50L;
private ImageCodecInfo myImageCodecInfo;
private EncoderParameters myEncoderParameters;
public Bmp2Jpeg(long Quality)
{
lQuality=Quality;
Ini();
}
private void Ini()
{
System.Drawing.Imaging.Encoder myEncoder;
EncoderParameter myEncoderParameter;
myImageCodecInfo = GetEncoderInfo( "image/jpeg ");
myEncoder = System.Drawing.Imaging.Encoder.Quality;
myEncoderParameters = new EncoderParameters(1);
myEncoderParameter = new EncoderParameter(myEncoder,lQuality);
myEncoderParameters.Param[0] = myEncoderParameter;
}
public Bmp2Jpeg()
{
Ini();
}
private static ImageCodecInfo GetEncoderInfo(String mimeType)
{
int j;
ImageCodecInfo[] encoders;
encoders = ImageCodecInfo.GetImageEncoders();
for(j = 0; j < encoders.Length; ++j)
{
if(encoders[j].MimeType == mimeType)
return encoders[j];
}
return null;
}
public byte[] BmpToJpegBuff(Bitmap bmpSrc)
{
MemoryStream msjpg=new MemoryStream();
bmpSrc.Save(msjpg, myImageCodecInfo, myEncoderParameters);
byte[] bjpeg=msjpg.ToArray();
return bjpeg;
}
public byte[] BmpToJpegBuff(byte[] bmpSrc)
{
MemoryStream ms=new MemoryStream(bmpSrc);
MemoryStream msjpg=new MemoryStream();
Bitmap myBitmap = new Bitmap(ms,false);
//myBitmap.Save( "c:\\temp\\ "+i.ToString()+ ".jpg ", myImageCodecInfo, myEncoderParameters);
myBitmap.Save(msjpg, myImageCodecInfo, myEncoderParameters);
byte[] bjpeg=msjpg.ToArray();
return bjpeg;
}
public Stream BmpToJpegStream(byte[] bmpSrc)
{
MemoryStream ms=new MemoryStream(bmpSrc);
MemoryStream msjpg=new MemoryStream();
Bitmap myBitmap = new Bitmap(ms,false);
//myBitmap.Save( "c:\\temp\\ "+i.ToString()+ ".jpg ", myImageCodecInfo, myEncoderParameters);
myBitmap.Save(msjpg, myImageCodecInfo, myEncoderParameters);
return msjpg;
}
public bool BmpToJpegFile(byte[] bmpSrc,string filename)
{
MemoryStream ms=new MemoryStream(bmpSrc);
Bitmap myBitmap=new Bitmap(ms,false);
myBitmap.Save(filename,myImageCodecInfo,myEncoderParameters);
return true;
}
public bool BmpToJpegFile1(Bitmap bmpSrc,string filename)
{
bmpSrc.Save(filename,myImageCodecInfo,myEncoderParameters);
return true;
}
}
http://expert.csdn.net/Expert/FAQ/FAQ_Index.asp?id=11392
解决方案 »
- winform的ListBox里的组合键的问题
- server.Transfer().............执行子请求错误 求教各位大虾啊~~~~
- 散分了,
- show和ShowDialog的区别?
- Response.BinaryWrite输出二进制图片时如何控制高度和宽度?
- 十万火急!!!!!用Media Class 1.0 Extreme Edition播放mp3的一个问题?
- 如何根据名称动态获取对象属性
- WPF,我感觉命令的代码不少啊
- 用.net做桌面应用怎么样?
- 有关用C#调用DCOM的问题
- label控件透明的问题! 急!(大家来看看)
- 如何在web窗体中用listview和treeview
bmp.Save(@"c:\b.bmp"),ImageFormat.Bmp);