c# convert image formats to jpg -
i need picture user, different format extensions, , want save "jpg", easy handling. there way in c# without arming quality?
from: http://msdn.microsoft.com/en-us/library/system.drawing.imaging.encoderparameter.aspx
private void varyqualitylevel() { // bitmap. bitmap bmp1 = new bitmap(@"c:\testphoto.jpg"); imagecodecinfo jgpencoder = getencoder(imageformat.jpeg); // create encoder object based on guid // quality parameter category. system.drawing.imaging.encoder myencoder = system.drawing.imaging.encoder.quality; // create encoderparameters object. // encoderparameters object has array of encoderparameter // objects. in case, there 1 // encoderparameter object in array. encoderparameters myencoderparameters = new encoderparameters(1); encoderparameter myencoderparameter = new encoderparameter(myencoder, 50l); myencoderparameters.param[0] = myencoderparameter; bmp1.save(@"c:\testphotoqualityfifty.jpg", jgpencoder, myencoderparameters); myencoderparameter = new encoderparameter(myencoder, 100l); myencoderparameters.param[0] = myencoderparameter; bmp1.save(@"c:\testphotoqualityhundred.jpg", jgpencoder, myencoderparameters); // save bitmap jpg file 0 quality level compression. myencoderparameter = new encoderparameter(myencoder, 0l); myencoderparameters.param[0] = myencoderparameter; bmp1.save(@"c:\testphotoqualityzero.jpg", jgpencoder, myencoderparameters); } ... private imagecodecinfo getencoder(imageformat format) { imagecodecinfo[] codecs = imagecodecinfo.getimagedecoders(); foreach (imagecodecinfo codec in codecs) { if (codec.formatid == format.guid) { return codec; } } return null; }
Comments
Post a Comment