ich speichere den Inhalt einer PictureBox mit folgendem Code:
private void ToolStMnuItemGrafSp_Click(object sender, EventArgs e)
{
string Pfad = @"D:\\Progs\\MTSpannung\\Grafiken\\";
SaveFileDialog sFD = new SaveFileDialog();
sFD.Filter = "jpg files (*.JPG)|*.jpg|png files (*.PNG)|*.png";
sFD.InitialDirectory = Pfad;
Bitmap img = new Bitmap(PicBox1.Width + 10, PicBox1.Height + 10);
PicBox1.DrawToBitmap(img, new Rectangle(0, 0, PicBox1.Width, PicBox1.Height));
if (sFD.ShowDialog() == DialogResult.OK)
{
Pfad = sFD.FileName;
try
{
if (sFD.Filter.Contains("jpg"))
{
img.Save(Pfad, ImageFormat.Jpeg);
}
else if (sFD.Filter.Contains("png"))
{
img.Save(Pfad, ImageFormat.Png);
}
}
catch (Exception SaveException)
{
MessageBox.Show("Verzeichnisauswahl ungültig!\n\n\nCode:\n"
+ SaveException.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
}
Die so erzeugten Bilddateien werden zwar in anderen Grafikprogrammen korrekt angezeigt, jedoch erscheint bei Dateien, die nicht im jpeg-Format gespeichert wurden, die im Anhang ausgewiesene Fehlermeldung. Offenbar wird also in C# keine Konvertierung vorgenommen. Kann mir jemand sagen, warum das so ist und wie der Fehler abgestellt werden kann? VielenDank.