Bonjour,
j’ai lu la définition du TFPColor et ses 16 bits par canal.
Cela veut-il dire que l’on peut créer des images avec 48 ou 64 bits par pixel ?
Quel format d’image permettrait ceci ?
Merci d’avance de vos réponses ;)
Version imprimable
Bonjour,
j’ai lu la définition du TFPColor et ses 16 bits par canal.
Cela veut-il dire que l’on peut créer des images avec 48 ou 64 bits par pixel ?
Quel format d’image permettrait ceci ?
Merci d’avance de vos réponses ;)
Salut,
La réponse est oui, il est possible d'avoir la définition de couleur sur 48 soit 8 octets.
Cela permet une meilleure défintion des couleurs... à ce niveau elles sont considérées comme couleurs vraies.
PS ... le format à mon avis est de type raw ... pour scanner et appareils photo.
Salut les formats de "fichiers", à ma connaissance, qui supportent le 48 et 64 bits sont :
- Le bmp mais c'est excessivement rare, Microsoft s'en sert (je ne l'ai jamais vu) avec GDI
- Le PNG, celui-ci supporte ces 2 formats, mais je ne sais pas si FPC les gères en sauvegarde (j'en doute)
- Le HDR
- le PFM de pixmap qui lui sauvegarde en single soit 128 bits
- Le TIFF en 64 bits
- Le JPEG-2000 jusqu'a 48b bits (et jusqu'a 38 bits par canal en théorie)
- Le KTX format d'image pour Vulkan
- Le Raw, comme l'a dit Anapurna
et il doit surement exister d'autres formats plus exotique
Oui, c'est vrai mais quoi qu'il arrive, nous sommes obligé de les convertir en 24/32 bits pour l'affichage sur nos écrans actuels
FPC/Lazarus ne gère même pas la création de bitmap de ce type cf ici et la. TFPColor est juste utilisé comme "containère" on est toujours obligé (pour le moment) de convertir les données de couleurs à un moment donné ou un autre (hors utilisation de FPCanvas).
Je préfère de loin encore transformer mes
pour effectuer certain traitement et ensuite les convertir vers un format 32 ou 64 bits, plus simple et moins de perte d'informationsCode:
1
2
3
4
5
6
7
8
9 TBZColor32 = record red, green, blue, alpha : byte; end; // en TBZFloatColor = record red, green, blue, alpha : Single; end;
A+
Jérôme
Merci de ces précisions :)