Files
kolibrios/programs/develop/libraries/pixlib/readme.txt
T
Sergey Semyonov (Serge) 673a89c327 lost pixlib sources
git-svn-id: svn://kolibrios.org@882 a494cfbc-eb01-0410-851d-a64ba20cac60
2008-10-20 15:53:55 +00:00

270 lines
6.4 KiB
Plaintext

typedef unsigned int u32_t;
typedef unsignet int handle;
typedef unsigned int color_t;
handle CreateHatchBrush(int hatch, color_t bkcolor, color_t fcolor);
Создать штрихованную кисть размером 8х8 пикселей
hatch тип штриховки:
HS_HORIZONTAL -------
HS_VERTICAL |||||||
HS_FDIAGONAL \\\\\\\
HS_BDIAGONAL ///////
HS_CROSS +++++++
HS_DIAGCROSS xxxxxxx
bkcolor цвет "0"
fcolor цвет "1"
Возвращаемое значение: логический номер кисти или 0
handle CreateMonoBrush(color_t bkcolor, color_t fcolor,
u32_t bmp0, u32_t bmp1);
Создать монохромную кисть размером 8х8 пикселей
bkcolor цвет "0"
fcolor цвет "1"
bmp0 bmp1 монохромный битмап 8х8 пикселей
Возвращаемое значение: логический номер кисти или 0
void DestroyBrush(handle brush);
Уничтожить кисть.
brush логический номер кисти.
Кисть должна быть создана вызовом CreateHatchBrush или CreateMonoBrush
handle CreatePixmap(unsigned width, unsigned height, u32_t format, u32_t flags);
Создать битмап
width ширина в пикселях. Максимум 2048
height высота в пикселях. Максимум 2048
format формат пикселей. Сейчас поддерживается только ARGB32
flags дополнительные флаги:
PX_MEM_SYSTEM = 0 битмап в системной памяти
PX_MEM_LOCAL = 1 битмап в локальной видеопамяти
PX_MEM_GART = 2 зарезервировано
остальные биты зарезервированы и должны быть 0
Возвращаемое значение: логический номер битмапа в случае успеха или 0
int DestroyPixmap( handle pixmap)
Уничтожить битмап.
pixmap логический номер битмапа.
Битмап должен быть создан CreatePixmap.
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
void* LockPixmap(handle pixmap)
Получить доступ к данным битмапа.
pixmap логический номер битмапа. SCR_PIXMAP для первичного экрана.
Блокирование битмапа может снизить быстродействие если битмап
создан с флагами PX_MEM_LOCAL или PX_MEM_GART.
Возвращаемое значение: указатель на начало данных битмапа
или NULL в случае неудачи.
int GetPixmapPitch(handle pixmap)
Получить ширину строки битмапа в байтах.
pixmap логический номер битмапа. SCR_PIXMAP для первичного экрана.
Битмап должен быть заблокирован вызовом LockPixmap
Возвращаемое значение: ширина строки битмапа в байтах или 0 в случае неудачи.
int UnlockPixmap(handle pixmap)
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int ClearPixmap(handle pixmap, color_t color)
Заполняет битмап указанным цветом;
pixmap логический номер битмапа. SCR_PIXMAP для первичного экрана.
color цвет в формате ARGB32
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int Line(handle pixmap, int x0, int y0, int x1, int y1, color_t color)
Нарисовать сплошную линию указаного цвета толщиной в 1 пиксель.
pixmap логический номер битмапа в который будет производится отрисовка.
SCR_PIXMAP для первичного экрана
x0,y0 x1,y1 координаты начальной и конечной точек линиии
color цвет в формате ARGB32
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int DrawRect(handle pixmap, int xorg, int yorg,
int width, int height,
color_t dst_color, color_t border)
Нарисовать сплошной прямоугльник указаного цвета c окантовкой.
pixmap логический номер битмапа в который будет производится отрисовка.
SCR_PIXMAP для первичного экрана
xorg,yorg координаты левого верхнего угла прямоугольника в пикселях
width ширина прямоугольника в пикселях
height высота прямоугольника в пикселях
color цвет прямоугольника в формате ARGB32
border цвет окантовки в формате ARGB32. Толщина окантовки 1 пиксел.
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int FillRect(handle pixmap, int xorg, int yorg,
int width, int height,
brush_t *brush, color_t border)
Нарисовать прямоугольник используя кисть
pixmap логический номер битмапа в который будет производится отрисовка.
SCR_PIXMAP для первичного экрана
xorg,yorg координаты левого верхнего угла прямоугольника в пикселях
width ширина прямоугольника в пикселях
height высота прямоугольника в пикселях
brush монохромная кисть размером 8х8 пикселей
border цвет окантовки в формате ARGB32. Толщина окантовки 1 пиксел.
Окантовка не рисуется если альфа компонен цвета равен 0.
Кисть должна быть создана CreateHatch или CreateMonoBrush.
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int Blit(handle dst_pixmap, int dst_x, int dst_y,
handle src_pixmap, int src_x, int src_y,
int width, int height)
Скопировать прямоугольную область пикселей.
dst_pixmap логический номер битмапа в который будет производитс
копирование. SCR_PIXMAP для первичного экрана.
dst_x, dst_y координаты левого верхнего угла области назначени
src_pixmap логический номер битмапа - источника пикселей.
SCR_PIXMAP для первичного экрана.
src_x,src_y координаты левого верхнего угла копируемой области
width ширина копируемой области
height высота копируемой области
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.
int TransparentBlit(handle dst_pixmap, int dst_x, int dst_y,
handle src_pixmap, int src_x, int src_y,
int width, int height, color_t key)
Скопировать прямоугольную область пикселей используя прозрачный цвет.
dst_pixmap логический номер битмапа в который будет производитс
копирование. SCR_PIXMAP для первичного экрана.
dst_x, dst_y координаты левого верхнего угла области назначени
src_pixmap логический номер битмапа - источника пикселей.
SCR_PIXMAP для первичного экрана.
src_x,src_y координаты левого верхнего угла копируемой области
width ширина копируемой области
height высота копируемой области
key прозрачный цвет в формате ARGB32
Функция не копирует пиксели цвет которых совпадает с key.
Возвращаемое значение: ERR_OK в случае успеха или ERR_PARAM в случае неудачи.