gpt4 book ai didi

java - 将图片与白色混合

转载 作者:行者123 更新时间:2023-12-04 05:07:19 25 4
gpt4 key购买 nike

public class BlendablePicture extends Picture {
public BlendablePicture(String filename) {
super(filename);
}

public void blendRectWithWhite(int xMin, int yMin, int xMax, int yMax,
double a) {
int x;
x = xMin;
while (x <= xMax) {
int y;
y = yMin;
while (y <= yMax) {
Pixel refPix = this.getPixel(x, y);
refPix.setRed((int) Math.round(refPix.getRed() * (1.0 + a)));
refPix.setGreen((int) Math.round(refPix.getGreen() * (1.0 + a)));
refPix.setBlue((int) Math.round(refPix.getBlue() * (1.0 + a)));

y = y + 1;
}
}
}
}

我需要将白色与像素混合,但这段代码只是让一切变得更亮!它需要看起来像这样:

Blended White - Illustrated

对此代码的任何帮助将不胜感激!

最佳答案

而不是
refPix.setRed ( (int) Math.round (refPix.getRed () * (1.0+ a) ));
尝试类似的东西
refPix.setRed ( (int) Math.round (refPix.getRed()*(1.0-a)+255*a ));
当 a = 1.0 时,你得到 R*0.0+255*1.0 = 255

当 a = 0.0 时,你得到 R*1.0+255*0.0 = R

当 a = 0.5 时,你得到 R*0.5+255*0.5(一半)

这适用于任何颜色,而不仅仅是白色,您只需要将红色、绿色和蓝色的 255 替换为您想要与之混合的颜色,然后您就可以获得 RGB 平均混合。

关于java - 将图片与白色混合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15373300/

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