摘要:系统运维 混合器的存在是为了适应不同平台、不同需求下的不同像素格式。混合器有三种:agg::rgba,agg::rgba8和agg::rgba16,都是用来指定
系统运维
混合器的存在是为了适应不同平台、不同需求下的不同像素格式。混合器有三种:agg::rgba,agg::rgba8和agg::rgba16,都是用来指定颜色的,rgba每个通道储存为double,rgba8为unsigned char,rgba16为int或long int;混合器起到的作用就像Win32API里的RGB和COLORREF宏。
针对agg::rgba特别说明:每一个分量虽然使用double类型保存,但是实际上,取值区间是[0,1],而agg::rgba8每一个分量的取值是[0,255]
头文件#include agg_pixfmt_rgba.h
类型定义
struct rgba8; //对,你没有看错,是结构,不是类……
基本成员函数
rgba8(unsigned r, unsigned g, unsigned b,unsigned a)
无须解释了吧,最大255;
clear(), no_color()
四个通道全部清零,也就是变没色咯;
transparent()
alpha清零,变透明;
opacity()
返回透明度,用double表示;
gradient(agg::rgba8 &c, double k)
颜色梯度,就是颜色变为从原先的颜色渐变为c,变化率为k;
add(agg::rgba8 &c, unsinged cover)
颜色叠加,叠加一个透明度为cover/255的颜色c;
成员变量
r, g, b, a都是无符号整型;
相关文章推荐
虚拟主机的专业参数,分别都是什么意思?2022-09-09
中非域名注册规则是怎样的?注册域名有什么用处? 2022-01-10
HostEase新年活动促销 美国/香港主机全场低至五折2021-12-28
HostGator下载完整备份教程分享2021-12-28
Flink中有界数据与无界数据的示例分析2021-12-28