首页 > 文档 > blendMode() 混合模式
2017
07-13

blendMode() 混合模式

blendMode() 混合模式

 

例子

size(100, 100);

background(0);

blendMode(ADD);

stroke(102);

strokeWeight(30);

line(25, 25, 75, 75);

line(75, 25, 25, 75);

 

 

size(100, 100, P2D);

blendMode(MULTIPLY);

stroke(51);

strokeWeight(30);

line(25, 25, 75, 75);

line(75, 25, 25, 75);

 

描述

根据用户定义的模式来混合显示窗口的像素。对于屏幕上已有的像素B(基色)和源像素A(混合色),有以下击中混合模式。一个像素最终的颜色(结果色)是分别对A和B两个图层的通道独立的按照上述混合模式中的一种进行混合的结果。例如,红色通道与红色通道比较,绿色通道与绿色通道比较,蓝色通道与蓝色通道比较。

 

BLEND(混合)- 对颜色进行线性插值:C = A * 参数 + B。这是默认的混合模式

ADD(相加)- 对两个颜色进行相加的混合之后与白色取小:C = min(A * 参数 + B,255)

SUBTRACT(相减)- 对两个颜色进行相减的混合之后与黑色取大:C = max(B – A * 参数, 0)

DARKEST(最暗)- 选择最暗的颜色:C = min(A * 参数,B)

LIGHTEST(最亮)- 选择最亮的颜色:C = max(A * 参数,B)

DIFFERENCE(差值)-从下一层图像上减去上一层图像的颜色

EXLCLUSION(排除)-与DIEFFERENCE相似,但是不那么极端

MULTIPLY(正片叠底)-将颜色相乘,结果色总是会暗一些

SCREEN(滤色)-反向相乘,使用颜色的逆值(即255-C)

REPLACE(替换)-混合色直接替代了基色并且不应用alpha通道的值

 

我们推荐使用blendMode()而不是之前的blend() 函数。然而,与blend() 不同的是blendMode() 并不支持HARD_LIGHT, SOFT_LIGHT, OVERLAY, DODGE, BURN这些混合模式。在老一些的硬件上,LIGHTEST, DARKEST 和 DIFFERENCE 这些混合模式可能不能使用。

 

语法

BlendMode(mode)

 

参数

mode 整型:要使用的模式

 

返回值

void



最后编辑:
作者:卡萨布兰卡
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。