Bildausschnitte aus Bild kopieren und speichern

kaykay

Grünschnabel
Hallo zusammen.

Ich möchte aus einem geladenen Bild bestimmte Ausschnitte kopieren und diese dann in jeweils einer neuen Datei speichern. Die Ausschnitte bestehen aus beliebigen Punkten und sind nicht rechteckig (Polygone)

Ich habe das z.Zt. so gelöst:

Code:
Point[] polyPoints =
{
        new Point(150, 40),
	new Point(440, 40),
	new Point(585, 280),
	new Point(440, 525),
	new Point(150, 525),
        new Point(2,280)
};

GraphicsPath path = new GraphicsPath();
path.AddPolygon(polyPoints);

Bitmap srcBitmap = new Bitmap("screenshot.bmp");  // Ausgangsbild
Bitmap bmp = new Bitmap(600, 600); // Zielbild
Graphics g = Graphics.FromImage(bmp);
g.SetClip(path, CombineMode.Replace);
g.DrawImageUnscaled(srcBitmap,0,0,600,600);
rotbmp.Save("unscaled.bmp",ImageFormat.Bmp);

Funktioniert soweit eigentlich ganz gut, nur wird der ausgeschnittene Bildbereich an die Position im neuen Bild geschrieben, an dem er auch im Originalbild war. Soll heißen, es bleiben immer Ränder. Ich möchte den ausgeschnittenen Bereich aber ganz oben links plaziert haben!

Weiß jemand einen Weg?

Danke im Voraus,
kay
 

Neue Beiträge

Zurück