/// <summary> /// Handles the Click event of OkButton object. /// </summary> private void okButton_Click(object sender, EventArgs e) { // update encoder string selectedEncoder = encoderNameComboBox.SelectedItem.ToString(); switch (selectedEncoder) { case "PNG": PngEncoder pngEncoder = new PngEncoder(); // set encoder settings PngEncoderSettings pngSettings = GetPngEncoderSettings(pngSettingsComboBox.SelectedItem.ToString()); pngEncoder.Settings.FilterMethod = pngSettings.FilterMethod; pngEncoder.Settings.CompressionLevel = pngSettings.CompressionLevel; EncoderSettings.EmbeddedImageEncoder = pngEncoder; break; case "JPEG": // set encoder settings JpegEncoderSettings jpegSettings = new JpegEncoderSettings(); jpegSettings.Quality = (int)jpegQualityNumericUpDown.Value; jpegSettings.SaveAsGrayscale = jpegGrayscaleCheckBox.Checked; JpegEncoder jpegEncoder = new JpegEncoder(jpegSettings); EncoderSettings.EmbeddedImageEncoder = jpegEncoder; break; } }
/// <summary> /// Creates the encoder settings. /// </summary> /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param> protected override void OnLoad(EventArgs e) { base.OnLoad(e); if (EncoderSettings == null) { JpegEncoderSettings settings = new JpegEncoderSettings(); settings.GenerateOptimalHuffmanTables = true; EncoderSettings = settings; } }