hey,
wollte mal fragen ob ihr wisst wie ich unter purebasic ein png bild mit alphachannel erstellen kann bzw ob es überhaupt möglich ist ein png bild zu erstellen
PNG mit Alphachannel
-
- Beiträge: 237
- Registriert: 17.10.2008 18:24
- Kontaktdaten:
Der Alpha-Kanal wird momentan noch nicht unterstuetzt (evtl. mit einer externen Bibliothek wie z.B. FreeImage oder was es da alles gibt) - ansonsten kann man in PB ImageObjekte auch als PNG speichern, mit SaveImage(). Es muss nur UsePNGImageEncoder() vorher ausgefuehrt werden. Damiit koennte man sich auf sehr leichtem Wege einen Konverter basteln
PB Hilfe hat geschrieben:Die PNG Alphachannel Information (wenn vorhanden) wird derzeit ignoriert.
Kommt auch drauf an was Du vor hast. Wenn Du Spiele machen willst, kannst Du PNGs mit Alphakanal nutzen, nämlich in Verbindung mit Sprite3D, da läuft das ohne Probleme.
ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Ich möchte ein png mit alphachannel abspeichernDare Devil hat geschrieben:PB Hilfe hat geschrieben:Die PNG Alphachannel Information (wenn vorhanden) wird derzeit ignoriert.
also ich hab ein bitmap/jpeg mit dem bild und dann ein zweites in graustufen sozusagen als alphakanal und dann möchte ich aus diesen zwei bildern eins machen und dann speichern ohne es weiter in pb selbst zu verwenden
-
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
schau mal im englischen forum, da gibts einige beispiele wie man über API direkt auf die bilder zugreifen kann.
ist nämlich so längst nicht mehr aktuell.
für Sprite3D kann man den Alphachannel einwandfrei benutzen.
http://www.purebasic.fr/german/viewtopi ... 771#207771
... in wieweit allerdings bei einem Image die 32bit korrekt abspeicherbar sind, weiß ich jetzt nicht.
aber wie gesagt, die jungs im englischen forum haben sich damit schon mehr auseinandergesetzt.
wär noch interessant zu wissen bei welchem befehl du das gefunden hast,Dare Devil hat geschrieben:PB Hilfe hat geschrieben:Die PNG Alphachannel Information (wenn vorhanden) wird derzeit ignoriert.
ist nämlich so längst nicht mehr aktuell.
für Sprite3D kann man den Alphachannel einwandfrei benutzen.
http://www.purebasic.fr/german/viewtopi ... 771#207771
... in wieweit allerdings bei einem Image die 32bit korrekt abspeicherbar sind, weiß ich jetzt nicht.
aber wie gesagt, die jungs im englischen forum haben sich damit schon mehr auseinandergesetzt.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
-
- Beiträge: 237
- Registriert: 17.10.2008 18:24
- Kontaktdaten:
Unter den Befehlen UsePNGImageDecoder() sowie bei UsePNGImageEncoder().Kaeru Gaman hat geschrieben:schau mal im englischen forum, da gibts einige beispiele wie man über API direkt auf die bilder zugreifen kann.
wär noch interessant zu wissen bei welchem befehl du das gefunden hast,Dare Devil hat geschrieben:PB Hilfe hat geschrieben:Die PNG Alphachannel Information (wenn vorhanden) wird derzeit ignoriert.
ist nämlich so längst nicht mehr aktuell.
für Sprite3D kann man den Alphachannel einwandfrei benutzen.
http://www.purebasic.fr/german/viewtopi ... 771#207771
... in wieweit allerdings bei einem Image die 32bit korrekt abspeicherbar sind, weiß ich jetzt nicht.
aber wie gesagt, die jungs im englischen forum haben sich damit schon mehr auseinandergesetzt.
wobei ich gerade lese, dass wenn man ein Sprite (nicht 3D-Sprite!) mit dem zusaetzlichen Flag "#PB_Sprite_Alpha" laedt, man eine 8 Bit - Graustufendatei mit DisplayAlphaSprite() (wie sie vermutlich auch hoermi besitzt) anzeigen kann.
Damit waere hoermi's Problem eigentlich zu bewaeltigen. Man laedt die normale Datei, die Graustufendatei, erstellt ein Image - zeigt alles an so wie man es gespeichert haben will und speichert anschliessend das Image - allerdings halt ohne direkten Alpha-Kanal, sondern sozusagen als "Snapshot".