3

現在、画像を切り抜いてから、新しい画像を保存しようとしています。元の画像、その画像のどこにトリミングするかを示すx座標とy座標、および新しいトリミング画像の幅と高さがあります。

これが私のコードです:

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);

ただし、画像を実際に保存すると、正しい高さと幅の小さな画像になりますが、完全に空になります。

私はここでトリックを見逃している、または何かを完全に誤解している(または両方!)と確信しているので、助けていただければ幸いです!

4

1 に答える 1

3

ビットマップのクローン機能を使用してみてください。

Bitmap newImage = originalBitmap.Clone(new RectangleF(x, y, width, height),  
                                       System.Drawing.Imaging.PixelFormat.Format32bppArgb);
newImage.Save(newFilePath);
于 2009-09-24T15:03:25.073 に答える