Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi *.bmp-Dateien -> *.tga-Dateien (https://www.delphipraxis.net/99142-%2A-bmp-dateien-%2A-tga-dateien.html)

DGL-luke 8. Sep 2007 14:28

Re: *.bmp-Dateien -> *.tga-Dateien
 
Du kannst mit TBitmap.Scanline den zeiger auf ein Pixel holen. Durch inkrementieren des zeigers kommst du zum nächsten Pixel der zeile, durch dekrementieren zum letzten pixel der vorherigen Zeile (glaub ich zumindest).

So kannst du die Pixel aus dem TBitmap auslesen und dann in dein TGA genau so übertragen, wie dus brauchst.

Lossy eX 8. Sep 2007 15:06

Re: *.bmp-Dateien -> *.tga-Dateien
 
Tu dir bitte selber mal den Gefallen und schau mal bitte GENAU bei CS ob das Bild nur auf dem Kopf steht oder ob die Zeilen auch gespiegelt sind. Also ob es um 180° gedreht ist. Denn wenn es nur auf dem Kopf steht, dann macht es die ganze Sache durchaus einfacher.

Wenn du ein TBitmap hast ist es ziemlich einfach. Da würde ich dir generell empfehlen jede Zeile per Scanline anzusprechen. Denn wenn du den gesammten Speicherbereich als einen Betrachtest ist das wohl nur zu verwirrend. In einem TBitmap befinden die Daten normalerweise auch mit der letzten Zeile zu erst im Speicher. Wie luke schon gesagt hat. Du lässt dir den Pointer der Zeile geben und kopierst diesen dann. Je nachdem ob das Bild nur kopf steht kannst du die ganze Zeile am Stück kopieren anderenfalls musst du Pixel für Pixel kopieren.

Ein gutes und umfangreiches Dokument über ScanLines gibt es bei efg's Computer Lab. Ist zwar nicht mehr alles Taufrisch aber die ScanLines ändern sich ja nicht. In diesem Dokument ist wohl eher der Part mit pf24Bit und/oder pf32Bit interessant.

tweetymr 8. Sep 2007 16:13

Re: *.bmp-Dateien -> *.tga-Dateien
 
danke an euch, ihr habt mir echt geholfen!
probiere das ganze gleich mal aus und scvhreibe dann wie und ob es funktioniert hat ;P

turboPASCAL 8. Sep 2007 16:20

Re: *.bmp-Dateien -> *.tga-Dateien
 
Wenn ich mich nicht irre, gibst auf efg's Computer Labs auch eine fertige TGA (Targa) Lade und Speicherunit.

// Edit:

Jupp, gefunden: http://www.efg2.com/Lab/Library/Delp...Conversion.htm


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:53 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz