如何在 P2D 模式下绘制完全透明的像素/点?
根据处理参考,中风(gray, alpha)
允许设置笔画的颜色和不透明度。在默认颜色模式下,alpha 值 255 表示完全不透明,而 0 值则表示完全透明。虽然这适用于(默认)JAVA2D 渲染器,但我似乎无法在 P2D 模式下绘制完全透明的点。
即使 alpha 值设置为 0(完全透明),此代码也清楚地在画布中心渲染了一个像素:
public class Transparency extends PApplet {
@Override
public void setup() {
size(200, 200, P2D);
}
@Override
public void draw() {
stroke(0, 0);
point(width / 2, height / 2);
}
public static void main(String[] args) {
PApplet.main(new String[] { Transparency.class.getSimpleName() });
}
}
这里出了什么问题?
According to the Processing Reference, stroke(gray, alpha)
allows to set the color and opacity of the stroke. With the default color mode, an alpha value of 255 denotes full opacity, while a value of 0 should correspond to complete transparency. While this works with the (default) JAVA2D renderer, I can't seem to paint fully transparent points in P2D mode.
This code clearly renders a pixel at the center of the canvas, even though the alpha value is set to 0 (fully transparent):
public class Transparency extends PApplet {
@Override
public void setup() {
size(200, 200, P2D);
}
@Override
public void draw() {
stroke(0, 0);
point(width / 2, height / 2);
}
public static void main(String[] args) {
PApplet.main(new String[] { Transparency.class.getSimpleName() });
}
}
What's wrong here?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个处理错误。
现在你唯一能做的就是自己检查透明度,如果透明度为零则不要绘制
This is a processing bug.
For now the only thing you can do is check the transparency yourself, and don't draw if it's zero