Forum: Multimedia
Delphi
by Pr0g,
12. Feb 2006
Hast du das Pixelformat von "grafik" auf 32Bit gesetzt, nach dem Create?
grafik.PixelFormat := pf32Bit;
Forum: Multimedia
Delphi
by Pr0g,
22. Mär 2005
Ich würde das TImage wegmachen und alle Operationen (Zeichnen, Laden, speichern...) auf ein TBitmap anwenden. (Ich glaube für das Undo nutzt du auch ein Image, dafür kannst du sowieso ein TBitmap nutzen). Dann kannst du das TBitmap per BitBlt auf deine Form blitten, musst nur nach jeder Zeichenoperation das onPaint der Form, oder PaintBox aufrufen. Ich habe nochmal ein Beispiel gemacht.
Forum: Multimedia
Delphi
by Pr0g,
21. Mär 2005
Webb du auf ein Image direkt zeichnest kann es zu fehlern kommen. Für sowas ist die Paintbox gedacht.
Hab dir hier mal ein kleines Beispiel gemacht. Zuerst wird ein Bitmap erzeugt und drauf gezeichnet. Als nächstes wird mit Scanline und zwei Schleifen jedes Pixel geprüft und wenns Blau ist in Rot geändert.
Forum: Multimedia
Delphi
by Pr0g,
21. Mär 2005
Aufs Canvas des Image solltest du nicht zeichnen. Zeichen auf ein ein Bitmap (bzw. dessen Canvas). Dann hast du auch wieder Scanline.
Forum: Multimedia
Delphi
by Pr0g,
21. Mär 2005
Wenn du Pixelweise mit Canvas drauf zugreifen willst, wird es im Gegensatz zu Scanlein sehr langsam.
Welches Bildformat willst du denn sonst nehmen, wenn nicht TBitmap?
Forum: Multimedia
Delphi
by Pr0g,
20. Mär 2005
Mit Scanline kannst du wie mit Pixels auf die einzelnen Pixel zugreifen, nur das es um einiges schneller ist. Aber da solltest du mit der Boardsuche genug finden können ;)
Forum: Multimedia
Delphi
by Pr0g,
19. Mär 2005
Es wird wohl an deiner For-Schleife liegen. Bei "for ... to ..." muss der erste Wert niedriger, als der zweite sein, sonst gehts nicht. Für die andere Variante gäbe es "for ... downto ...".
Meintest du das?
MfG Pr0g