Как заставить C # принудительно сохранять растровые изображения, которые сохраняются, как 24-битные изображения, что можно увидеть, когда вы получаете свойства изображения, щелкнув его правой кнопкой мыши в Windows. Все изображения, которые я сохраняю, установлены в 32-битном формате. Я попробовал приведенный ниже код безуспешно. Все исходные изображения также 24-битные, но всегда сохраняются как 32-битные изображения.
public void Save(int index)
{
string savestrFilename;
SaveFileDialog dialog = new SaveFileDialog();
dialog.Title = "image save...";
dialog.OverwritePrompt = true;
dialog.Filter = "JPEG File(*.jpg)|*.jpg|Bitmap File(*.bmp)|*.bmp";
if (dialog.ShowDialog() == DialogResult.OK)
{
savestrFilename = dialog.FileName;
System.IO.FileStream stream = new System.IO.FileStream(savestrFilename , System.IO.FileMode.Create);
JpegBitmapEncoder encoder = new JpegBitmapEncoder();
encoder.QualityLevel = 70;
encoder.Frames.Add(BitmapFrame.Create(_grabImageList[index].BitmapImage));
encoder.Save(stream);
stream.Close();
}
}