Einzelnen Beitrag anzeigen

Benutzerbild von Harry Stahl
Harry Stahl

Registriert seit: 2. Apr 2004
Ort: Bonn
2.534 Beiträge
 
Delphi 11 Alexandria
 
#6

AW: Bit-Tiefe in PNG ermitteln

  Alt 26. Mär 2020, 23:09
Hey, danke für den Source.

Ich habe bs.Menory durch bs.bytes ersetzt, dann läuft es.

Allerdings erhalte ich als Wert für FarbTiefe^ immer "8" zurück, egal ob es ein PNG mit 24 Bit-Tiefe oder 8 Bit-Tiefe ist (laut Windows Eigenschaftsanzeige).

Was stimmt da noch nicht?

Sieht so aus, als ob das in dem Fall des 8-Bit PNG ein eine Angabe für den Palleten-Index ist.
Wie finde ich das raus? Abhängig vom Colortype?

Unter Linux scheitert das Einlesen in TImage.Picture, weil die Funktion CreateHalftonePalette nicht unterstützt wird, daher meine Vermutung, dass es ein Wert für die Palette sein könnte (mit Bezug auf die Erklärung oben : "Bit depth is a single-byte integer giving the number of bits per sample or per palette index (not per pixel). Valid values are 1, 2, 4, 8, and 16, although not all values are allowed for all color types.")

Geändert von Harry Stahl (26. Mär 2020 um 23:18 Uhr)
  Mit Zitat antworten Zitat