PNG mit Alpha-Kanal speichern

Für Probleme bezüglich Grafik, Audio, GL, ACS, ...
Antworten
Eritacus
Beiträge: 15
Registriert: Di 26. Feb 2013, 08:26
OS, Lazarus, FPC: Mac Catalina / Lazarus 2.0.8
Wohnort: Magdeburg

PNG mit Alpha-Kanal speichern

Beitrag von Eritacus »

Hallo zusammen,

endlich ich bin soweit, daß ich in einem Grafikprogramm eine TBitmap transparent darstellen kann.
Dabei kann ich beliebige Farben mit beliebiger Transparenz von voll-transparent bis opak machen.
Die Anzeige ist top - und ich kann diese Bitmaps auch in andere Bilder einfügen und sonstwie benutzen, alles prima!

ABER, ich kann diese Bitmaps nicht als PNG mit vollständigen Transparenzinformationen abspeichern.

....
Image1.Picture.PNG.SaveToFile('xx.png');
....

bringt zwar eine png, aber nur die vollständig transparente Farbe wird auch transparent.
Wenn man sich diese Datei dann im HexEditor anschaut, sieht man im entsprechenden Chunk, daß eine 2 eingetragen ist = Die Pixel werden durch Farbwerte repräsentiert ...
Da müßte aber eine 6 stehen = Der Alpha-Kanal wird verwendet

Wie sage ich der PNG, daß der Alpha-Kanal verwendet werden soll?

Vielleicht hat ja jemand einen Tip?

Gruß
Eritacus

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: PNG mit Alpha-Kanal speichern

Beitrag von theo »

Ich glaube TBitmap bietet diese Format-Details nicht an.
Da musst du wahrsch. eine Stufe tiefer gehen z.B.
http://svn.freepascal.org/cgi-bin/viewv ... iew=markup

Oder 3rd-Party, wie meine OpBitmap o.ä.

Eritacus
Beiträge: 15
Registriert: Di 26. Feb 2013, 08:26
OS, Lazarus, FPC: Mac Catalina / Lazarus 2.0.8
Wohnort: Magdeburg

Re: PNG mit Alpha-Kanal speichern

Beitrag von Eritacus »

Hi Theo,

Von Dir habe ich schon einiges gelesen und ich weiß auch, daß das opbitmap von Dir ist. Danke, daß Du geantwortet hast...
aber zur Sache: ich hab erst mal flüchtig in den link geschaut, zumindest die properties sehen vielversprechend aus.
Hoffentlich reicht mein Wissen aus, um das Teil nutzen zu können.

Wie ist das mit Deinem opbitmap? Darf ich das benutzen und wenn ja, wo kriege ich das her?

Gruß
Eritacus

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: PNG mit Alpha-Kanal speichern

Beitrag von theo »

Findest du hier: http://www.theo.ch/lazarus/opbitmap64.zip
Ist hier gelinkt viewtopic.php?t=434

Aber das ist nat. wieder eine Welt für sich. Wenn's nur ums speichern geht, reicht vllt. doch fpwritepng.

Antworten