Processing, blend()
用法介绍。
用法
blend(sx, sy, sw, sh, dx, dy, dw, dh, mode)
blend(src, sx, sy, sw, sh, dx, dy, dw, dh, mode)
参数
src
(PImage)
引用源图像的图像变量sx
(int)
源左上角的 X 坐标sy
(int)
源左上角的 Y 坐标sw
(int)
源图像宽度sh
(int)
源图像高度dx
(int)
目的地左上角的X坐标dy
(int)
目的地左上角的Y坐标dw
(int)
目标图像宽度dh
(int)
目标图像高度mode
(int)
混合、添加、减法、最亮、最暗、差异、排除、乘法、屏幕、叠加、HARD_LIGHT、SOFT_LIGHT、闪避、燃烧
返回
void
说明
将像素区域混合到由img
参数指定的图像中。这些副本利用完整的 Alpha 通道支持和以下模式的选择,将源像素 (A) 的颜色与目标图像 (B) 中的像素颜色混合:
BLEND - 颜色的线性插值:C = A*factor + B
ADD - 与白色夹子的加法混合:C = min(A*factor + B, 255)
SUBTRACT - 与黑色剪辑的减法混合:C = max(B - A*factor,
0)
DARKEST - 只有最深的颜色成功:C = min(A*factor, B)
LIGHTEST - 只有最亮的颜色成功:C = max(A*factor, B)
差异 - 从底层图像中减去颜色。
排除 - 类似于差异,但不那么极端。
MULTIPLY - 将颜色相乘,结果总是更暗。
SCREEN - 相反乘法,使用颜色的逆值。
叠加 - 乘法和屏幕的混合。将暗值相乘,并屏蔽亮值。
HARD_LIGHT - 大于 50% 灰色时屏幕显示,较低时倍增。
SOFT_LIGHT - 最暗和最亮的混合。像 OVERLAY 一样工作,但没有那么苛刻。
道奇 - 减轻浅色调并增加对比度,忽略黑暗。在 Illustrator 和 Photoshop 中称为 "Color Dodge"。
BURN - 应用较暗的区域,增加对比度,忽略灯光。在 Illustrator 和 Photoshop 中称为 "Color Burn"。
所有模式都使用源图像像素的 alpha 信息(最高字节)作为混合因子。如果源区域和目标区域的大小不同,图像将自动调整大小以匹配目标大小。如果不使用srcImg
参数,则将显示窗口用作源图像。
从 0149 版开始,此函数将忽略 imageMode()
。
例子
size(400,400);
background(loadImage("mt-fuji.jpg"));
PImage img = loadImage("dandelions.jpg");
image(img, 0, 0);
blend(img, 0, 0, 132, 400, 268, 0, 132, 400, ADD);
size(400,400);
background(loadImage("mt-fuji.jpg"));
PImage img = loadImage("dandelions.jpg");
image(img, 0, 0);
blend(img, 0, 0, 132, 400, 268, 0, 132, 400, SUBTRACT);
size(400,400);
background(loadImage("mt-fuji.jpg"));
PImage img = loadImage("dandelions.jpg");
image(img, 0, 0);
blend(img, 0, 0, 132, 400, 268, 0, 132, 400, DARKEST);
size(400,400);
background(loadImage("mt-fuji.jpg"));
PImage img = loadImage("dandelions.jpg");
image(img, 0, 0);
blend(img, 0, 0, 132, 400, 268, 0, 132, 400, LIGHTEST);
相关用法
- Processing blendMode()用法及代码示例
- Processing blue()用法及代码示例
- Processing box()用法及代码示例
- Processing beginShape()用法及代码示例
- Processing bezierPoint()用法及代码示例
- Processing binary()用法及代码示例
- Processing beginRaw()用法及代码示例
- Processing boolean()用法及代码示例
- Processing break用法及代码示例
- Processing boolean用法及代码示例
- Processing beginRecord()用法及代码示例
- Processing bezierDetail()用法及代码示例
- Processing background()用法及代码示例
- Processing brightness()用法及代码示例
- Processing bezierVertex()用法及代码示例
- Processing bezierTangent()用法及代码示例
- Processing byte()用法及代码示例
- Processing beginCamera()用法及代码示例
- Processing bezier()用法及代码示例
- Processing byte用法及代码示例
- Processing beginContour()用法及代码示例
- Processing FFT用法及代码示例
- Processing SawOsc.pan()用法及代码示例
- Processing FloatDict用法及代码示例
- Processing FFT.stop()用法及代码示例
注:本文由纯净天空筛选整理自processing.org大神的英文原创作品 blend()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。