Получение указателя на функцию для преобразования из палитрового формата в непосредственный
#include <img.h>img_expand_f * img_expand_getfunc( img_format_t src,img_format_t lut );
img
Функция возвращает указатель на функцию преобразования данных (или NULL
если запрошиваемое преобразование не поддерживается), которую можно вызвать для преобразования серии пикселей из формата на основе палитры src в непосредственный формат по таблице трансляции lut.
Функция преобразования отвечает за трансформацию данных на месте (в том же самом буфере). В противном случае перекрытие буферов src и dst, если они не указывают в точности на одну и ту же область памяти, является не безопасным. |
Функция преобразования принимает вид:
void img_expand_f( const uint8 *src,uint8 *dst,unsigned n,const uint8 *lut );
Пример процедуры преобразования из PAL8
в ARGB1555:
ARGB1555
). Например:
img_convert_data( IMG_FMT_PKHE_ARGB8888, palette, IMG_FMT_PKLE_ARGB1555, palette, npalette );
img_expand_getfunc( IMG_FMT_PAL8, IMG_FMT_PKLE_ARGB1555 );
expand_f( sptr, dptr, npixels, palette );
Не все типы преобразований поддержаны в библиотеке. Следующий список операций относится к поддерживаемым:
8bpp
формат в не индексировнный 16bpp
8bpp
формат в не индексировнный 24bpp
8bpp
формат в не индексировнный 32bpp
Графическая подсистема ЗОСРВ «Нейтрино», Библиотека Image
img_format_t, img_convert_data(), img_dtransform_create(), IMG_FMT_BPL(), img_lib_attach()
Предыдущий раздел: Image API