Bild aus Zwischenablage holen und als BMP speichern?



  • Frage siehe Topic. Kann mir wer da helfen, wie das in C# geht?



  • ab .NET 2.0 kannst du Clipboard.GetImage() oder Clipboard.GetData() nutzen
    sonst Clipboard.GetDataObject()



  • string[] NativeDataTypes = Clipboard.GetDataObject().GetFormats(false);
    
    foreach (string ndt in NativeDataTypes)
    {
       if ((ndt == DataFormats.Dib) 
           ||(ndt == DataFormats.Dif)
           || (ndt == DataFormats.Tiff)
           || (ndt == DataFormats.Bitmap))
    
       { // Eine Bitmap in der Zwischenablage...
           Bitmap bmp = (Bitmap)                  
                    (Clipboard.GetDataObject().GetData(DataFormats.Bitmap));
    
           string bmpName = (string) oName;
    
           MessageBox.Show(bmpName.ToString());
    
           // Using the optional parameter, will save as a bitmap
           bmp.Save("C:\\Bilder\\"+ bmpName +".bmp",   
           System.Drawing.Imaging.ImageFormat.Bmp);
       }
    }
    

    irgendwie funzt das nicht, er geht nicht in die if-schleife, wo ist der Fehler? 😕 😕



  • keiner ne Idee? 😞



  • da ich nur vs2005 habe, kann ich dir nicht richtig weiter helfen. dein kode wird bei mir ohne probleme asgeführt. die datei wird auch gespeichert.

    sie mal im debuger welche werte dein NativeDataTypes-Stringarray wirklich drine hat.


Anmelden zum Antworten