Autor Beitrag
Christoph1972
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 690
Erhaltene Danke: 16


VS2015 Pro / C# & VB.Net
BeitragVerfasst: Sa 06.03.10 11:16 
Guten Morgen zusammen,

ich hole mir ein Bildausschnitt aus einem Image und zoome den Clip. Das funktioniert soweit super, auch ohne Qualitätsverluste, jedoch nur wenn ich den Clip direkt in einem Panel zeichne mit: CreateGraphics(). Daraus ergibt sich dann die Einschränkung, das kein Control über die Zeichnung bewegt werden darf, da diese nicht neu gezeichnet wird. Genau das muss aber möglich sein, ohne wenn und aber. Also muss ein neues Bitmap her, hier hapert es allerdings.

Das funktioniert prima:
ausblenden C#-Quelltext
1:
2:
3:
4:
using (Graphics g = panel1.CreateGraphics())
{
    g.DrawImage(bmpClip, 00, userRectangle.Width * scaleFactor, userRectangle.Height * scaleFactor);
}



Wenn ich nun ein neues Bitmap erstelle geht die neue Skalierung verloren, bzw. wird nicht berücksichtigt.
ausblenden C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
//Bitmap mit neuer Skalierung erstellen.
Bitmap newBitmap = new Bitmap(Convert.ToInt32(userRectangle.Width * scaleFactor), Convert.ToInt32(userRectangle.Height * scaleFactor));

using (Graphics g = Graphics.FromImage(newBitmap))
{
    g.DrawImage(bmpClip, 00, userRectangle.Width * scaleFactor, userRectangle.Height * scaleFactor);
}



Wenn das neue Image mit einer PictureBox betrachtet wird, ist es nicht skaliert. Was läuft den hier falsch?

Über Hinweise und Anregungen freue ich mich wie immer :lol:

_________________
Gruß
Christoph
Christoph1972 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 690
Erhaltene Danke: 16


VS2015 Pro / C# & VB.Net
BeitragVerfasst: Sa 06.03.10 20:28 
Sorry, der Code ist OK. Der Fehler war an einer anderen Stelle!

_________________
Gruß
Christoph