Domanda

Al momento sto cercando di ritagliare un'immagine, e quindi salvare la nuova immagine. Ho l'immagine originale, X e Y coordinate del luogo in cui su quella immagine che voglio il ritaglio di essere, e la larghezza e l'altezza della nuova immagine ritagliata.

Qui è il mio codice:

Bitmap originalBitmap = new Bitmap(filePath);
Bitmap newImage = new Bitmap(width, height);
Graphics g = Graphics.FromImage(newImage);
g.DrawImage(originalBitmap, x, y, width, height);
newImage.Save(newFilePath);

Ma quando l'immagine viene salvata acutally, è una piccola immagine della giusta altezza e larghezza, ma è completamente vuota.

Sono sicuro che mi manca solo un trucco qui, o completamente incomprensione qualcosa (o entrambi!), In modo che qualsiasi aiuto a tutti sarebbe apprezzato!

È stato utile?

Soluzione

provare a utilizzare la funzione Clone di Bitmap:

Bitmap newImage = originalBitmap.Clone(new RectangleF(x, y, width, height),  
                                       System.Drawing.Imaging.PixelFormat.Format32bppArgb);
newImage.Save(newFilePath);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top