2012년 05월 14일
[C#] JPEG 압축 수준 설정 및 저장.
[C#] Bitmap을 Jpeg로 저장, 압축 설정.
Bitmap을 처리하다가 상당히 압축된 jpg파일이 필요해서, 이와 같은 코드를 참고하였습니다. 압축수준을 설정할 수 있어서 유용한 코드가 될 것 같네요.
링크는 MSDN 문서, 예제 입니다. 참고하세요.
[Link] http://msdn.microsoft.com/ko-kr/library/bb882583.aspx
[Source Code]
:
Bitmap Bmp;
:
private void jpgSet()
{
ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);
System.Drawing.Imaging.Encoder myEncoder = System.Drawing.Imaging.Encoder.Quality;
EncoderParameters myEncoderParameters = new EncoderParameters(1);
EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 50L);
myEncoderParameters.Param[0] = myEncoderParameter;
Bmp.Save("test.jpg", jgpEncoder, myEncoderParameters); // 여기서 bmp는 bitmap 변수 입니다.
}
private ImageCodecInfo GetEncoder(ImageFormat format)
{
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();
foreach (ImageCodecInfo codec in codecs)
{
if (codec.FormatID == format.Guid)
{
return codec;
}
}
return null;
}
:
Bitmap을 처리하다가 상당히 압축된 jpg파일이 필요해서, 이와 같은 코드를 참고하였습니다. 압축수준을 설정할 수 있어서 유용한 코드가 될 것 같네요.
링크는 MSDN 문서, 예제 입니다. 참고하세요.
[Link] http://msdn.microsoft.com/ko-kr/library/bb882583.aspx
[Source Code]
:
Bitmap Bmp;
:
private void jpgSet()
{
ImageCodecInfo jgpEncoder = GetEncoder(ImageFormat.Jpeg);
System.Drawing.Imaging.Encoder myEncoder = System.Drawing.Imaging.Encoder.Quality;
EncoderParameters myEncoderParameters = new EncoderParameters(1);
EncoderParameter myEncoderParameter = new EncoderParameter(myEncoder, 50L);
myEncoderParameters.Param[0] = myEncoderParameter;
Bmp.Save("test.jpg", jgpEncoder, myEncoderParameters); // 여기서 bmp는 bitmap 변수 입니다.
}
private ImageCodecInfo GetEncoder(ImageFormat format)
{
ImageCodecInfo[] codecs = ImageCodecInfo.GetImageDecoders();
foreach (ImageCodecInfo codec in codecs)
{
if (codec.FormatID == format.Guid)
{
return codec;
}
}
return null;
}
:
# by | 2012/05/14 18:03 | C# / WinForm | 트랙백



