gpt4 book ai didi

javascript - 使用 CamanJS 对图像的一部分进行操作

转载 作者:行者123 更新时间:2023-11-28 08:27:46 29 4
gpt4 key购买 nike

我正在使用 Caman JS 修改图像。我只想修改像素子集的 Alpha channel 。但是当我应用过滤器时,它会修改图像中的所有像素。关于如何修改像素子集的任何建议。我需要创建一个插件而不是过滤器吗?

window.doWhatever=->
offset={x:170,y:150}
#for i in [0..10]
# for j in [0..10]
# x=j+offset.x
# y=i+offset.y
# image.maskAlpha(x,y,0)
x=50
y=50
image.maskAlpha(x,y,255)
image.render()
Caman.Filter.register 'maskAlpha',(x,y,alphain) ->
this.process 'maskAlpha', ->
pixel=this.getPixel(x,y)
this.putPixel(x,y,{
r:pixel.r,
g:pixel.g,
b:pixel.b,
a:alphain})

或在 JavaScript 中
window.doWhatever = 函数() { var 偏移量,x,y; 偏移量={ x:170, y:150 }; x = 50; y = 50; image.maskAlpha(x, y, 255); 返回图像.render(); };

 Caman.Filter.register('maskAlpha', function(x, y, alphain) {
return this.process('maskAlpha', function() {
var pixel;
pixel = this.getPixel(x, y);
return this.putPixel(x, y, {
r: pixel.r,
g: pixel.g,
b: pixel.b,
a: alphain
});
});
});

最佳答案

由于 webkit 和其他浏览器实现的 Canvas 存在缺陷,如果 alpha 设置为 0,它会用零覆盖 RGB 值,因此没有一种干净的方法可以做到这一点。

alpha is over written question

关于javascript - 使用 CamanJS 对图像的一部分进行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22212942/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com