【问题标题】:Retain opacity on mousemove - canvas [duplicate]保留鼠标移动的不透明度 - 画布 [重复]
【发布时间】:2020-03-22 20:24:43
【问题描述】:

我正在尝试使用 mouseMove 在画布上的某些区域上色。我可以通过单击鼠标来保持不透明度。但是当我做鼠标移动时,不保留颜色不透明度。尝试了多种解决方案,但没有任何效果。附上带有样本的小提琴。

Sample Fiddle

 ctx.arc(x, y, w, 0, 2 * Math.PI);
    ctx.filter = 'opacity(30%)';
    ctx.fillStyle = 'blue';
    ctx.fill();
    ctx.closePath()

PS:我使用的是画布,我的要求中没有 svg 的范围。

任何帮助表示赞赏。谢谢

【问题讨论】:

  • 该解决方案在我的情况下不起作用,遇到了一些问题。对此的任何解决方案都会有帮助@Kaiido
  • 抱歉,我现在没有时间帮助您。如果您希望我重新提出您的问题(对我来说至少需要 12 小时,但其他人也可以这样做),请edit 它清楚地解释为什么那里的解决方案不起作用,并在问题本身中包含您的问题有这行不通。

标签: javascript image-processing canvas imagefilter


【解决方案1】:

这是因为您绘制的速度很慢,因此一堆线段的不透明度会随着多个绘制调用叠加在一起而叠加。

如果您更喜欢带有字母的线条,请考虑将其绘制为 100%,并改为减少 globalalpha。 (docs)

【讨论】:

  • 减少 GlobalApha 也没有运气。 :(
猜你喜欢
  • 2017-08-07
  • 2013-12-26
  • 1970-01-01
  • 1970-01-01
  • 2010-09-25
  • 1970-01-01
  • 2012-05-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多