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

1

11.10.2008, 13:50

Windows forms Anwendung - Pixel vom Bild

Hallo.
Ich möchte ein Bild über die Seriale Schnittstelle auf mein ATMega128-Board schicken und es dann auf einem Display (128x64 px) ausgeben.
Texte kann ich schon verschicken, aber leider komme ich mit der PictureBox nicht ganz klar.

Ich möchte das geladene Bild bearbeiten:
1. Es soll schwarz weiß sein
2. Es soll auf 128x64px schrumpfen

Zum übertragen muss ich dann die einzelnen Pixel auslesen.
Doch wie geht das?

Ich wäre für jede Unterstüzung sehr dankbar!!
Gruß Flo

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

2

11.10.2008, 14:33

Bitmap.GetPixel() ist dann doch was für dich ;) Und die Farbtiefe einer PictureBox kann man afaik sogar im Designer einstellen.

Edit: Achso verlesen ... Sekunde, schrumpfen ist noch einfacher.

EditEdit:

C-/C++-Quelltext

1
2
3
4
            Bitmap thumb = new Bitmap(thumbsize.Width, thumbsize.Height); // Creating the thumbnail image

            Graphics graphics = Graphics.FromImage(thumb );
            graphics.DrawImage(orig, new Rectangle(0,0, thumbsize.Width,  thumbsize.Height)); // Drawing the original scaled onto the thumb image

            graphics.Dispose();
Ist von mir gerade ausm Projekt kopiert und im Forum angepasst worden. Hoffe so geht das alles ;)

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

3

11.10.2008, 15:32

Du solltest in deinem Projekt evtl über der Verwendung von using nachdenken.

Außerdem bietet das Framework doch die tolle Methode "GetThumbnailImage" für Image-Objekte an:

C-/C++-Quelltext

1
Image thumb = bitmap.GetThumbnailImage( 128, 64, null, new IntPtr() );
@D13_Dreinig

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

4

11.10.2008, 16:02

Hm stimmt, mit using für das Grafikobjekt ist das eleganter. Daran werd ich mich als C++ Programmierer nie so ganz gewöhnen ... Und die Thumbnail Methode hab ich peinlicherweise glatt übersehen. Typisch .Net, es war immer schon vor mir da :oops:

Allerdings kann ich zu meiner Ehrenrettung hinzufügen, dass der Code bei mir nur als netter Nebeneffekt skalieren soll. Primär geht es darum Tiles einer Tilemap anzuzeigen.


(Link)

5

12.10.2008, 18:10

Wow vielen Dank!
Das hat mir sehr weiter geholfen!

Gruß Flo

Chase

Alter Hase

Beiträge: 753

Wohnort: Nagaoka / Darmstadt / Düsseldorf

Beruf: fauler Studi

  • Private Nachricht senden

6

12.10.2008, 19:09

@Gurke: Sind die Grafiken Eigenbau? Pixelart dieser Klasse gibts heute nur noch selten
"Have you tried turning it off and on again?"

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

7

12.10.2008, 19:18

die sind aus dem rpg-maker^^

BlackSnake

Community-Fossil

Beiträge: 1 549

Beruf: Student

  • Private Nachricht senden

8

12.10.2008, 19:22

Zitat von »"TrommlBomml"«

die sind aus dem rpg-maker^^

jetzt verrat das doch nicht :lol:

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

9

13.10.2008, 11:02

Keine Ahnung wo die genau her sind. Abrexxes hat mal so ein tolles Paket hochgeladen, da hab ich die her.

Werbeanzeige