Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

1

29.08.2007, 17:29

[C#] DrawToBitmap() "verbessern"

Ich hab grad ein Problem mit der DrawToBitmap Methode der Windows Forms. Eigentlich ein eher peinliches ^^ Die Funktion erwartet als zweiten Parameter ein Rectangle, ich ging irgendwie davon aus, dass dieses die Position auf dem Control angeben würde. Dummerweise tut es das nicht, es gibt die Position auf dem Bitmap Objekt an (also WOHIN geblittet wird, nicht WOHER).

Es weiss nicht zufällig jemand wie ich das erwünschte Verhalten erreichen könnte? Ich Google Noob hab da mal wieder nix gefunden. Gibt zwar ne Menge Tuts und Blogeinträge zu DrawToBitmap, aber keiner ist in mein Problem gelaufen :(

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

2

29.08.2007, 18:37

Oke, habs dann doch selber hinbekommen. Hatte mir das ganze durch einen weiteren Gedankenfehler nur verkompliziert. Hier noch kurz eine Zusammenfassung der Methode:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
            int dim = 32;        // Dimension of a tile

            Bitmap bmp = new Bitmap(32, 32);
            
            // We need to turn of all custom drawing, it would appear on our little Bitmap ;)

            tilesetView.HighlightTiles = false;
            tilesetView.Gridlines = false;
            Graphics g = Graphics.FromImage(bmp);

            g.DrawImage(tilesetView.InternalPictureBox.Image, new Rectangle(0, 0, dim, dim), 
                        new Rectangle(tile.PixelPos.X, tile.PixelPos.Y, dim, dim), GraphicsUnit.Pixel);
            
            // We turn the drawing back to the "Userstate"

            tilesetView.HighlightTiles = toolStripButtonHighlightTiles.Checked;
            tilesetView.Gridlines = toolStripButtonGrid.Checked;

Paul_C.

Frischling

Beiträge: 81

Wohnort: Duisburg

  • Private Nachricht senden

3

29.08.2007, 18:39

Ansonsten hätte dir vielleicht dieser Artikel weiterhelfen können:
MSDN Artikel

Das Gurke

Community-Fossil

  • »Das Gurke« ist der Autor dieses Themas

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

Paul_C.

Frischling

Beiträge: 81

Wohnort: Duisburg

  • Private Nachricht senden

5

29.08.2007, 20:14

Oh, dachte, das wäre einfach. :P
(nicht ernst nehmen. Auch ich verstehe nicht immer alles)

Werbeanzeige