babl ist eine dynamische, jede zu einem, Pixelformat Übersetzung Bibliothek.
Babl ermöglicht die Konvertierung zwischen verschiedenen Methoden der Speicherung von Pixel als Pixelformate, die mit verschiedenen bitdepths und andere Datendarstellungen, Farbmodelle und Komponenten Permutationen haben bekannt.
Ein Wortschatz, um neue Pixelformate aus existierenden Primitiven zu formulieren ist, sowie der Rahmen neue Farbmodelle und Datentypen hinzuzufügen ist.
Verbrauch:
Die einfachste Szenario für die Verwendung babl ist die Konvertierung zwischen linearen Puffer durch eine bestehende BablPixelFormat vertreten.
babl_process (babl_fish (babl_format ("sRGB"), babl_format ("CIE Lab-float")),
srgb_buffer, lab_buffer,
pixel_count);
Wenn die vorhandenen Pixel-Formate sind nicht ausreichend für die Konvertierung weitgehend, können neue on the fly erstellt werden. Der Konstruktor wird die vorherige erstellt man bieten, wenn Duplikate registriert sind.
format = babl_format_new (babl_model ("R'G'B'"),
babl_type ("u8"),
babl_component ("B" '),
babl_component ("G '"),
babl_component ("R '"),
NULL);
babl_process (babl_fish (source_format, destination_format)
source_buffer, destination_buffer,
pixel_count);
Eigenschaften .
- Fast
- Präzise.
- Stabile, kleine API.
- Selbstprofilierung und Optimierung.
- ANSI C, arbeitet unter Win32, Linux und Mac, 32bit und 64bit-Systemen.
- Erweiterbar mit neuen Formaten, Farbmodelle, Komponenten und Datentypen.
- Referenz 64-Bit-Fließkomma-Umwandlungen für Datentypen und Farbmodelle.
Was ist neu in dieser Pressemitteilung:
- Geschwindigkeitsverbesserungen durch: koaleszierten Hashing frühen Rettung auf Erstellung von doppelten Formate, Caching von nicht existierenden Pfaden.
- Große Mengen des Kerns wurde ebenfalls überprüft und überarbeitet. Verbesserte Konvertierung Abdeckung in der Matrix.
Kommentare nicht gefunden