如何防止画布褪色与缩放< 1

时间:2015-05-16 01:36:25

标签: javascript html5 canvas

我在html画布上画一个场景。用户可以调整画布的大小,从而使场景以不同的比例重绘。随着尺寸变小,场景中的颜色逐渐消失,直到最终几乎变成白色。

我怀疑这是因为画布合成算法,如果你绘制宽度为0.1像素的颜色,受影响像素的颜色只会稍微改变。这很好,除了它在较小尺度上褪色的问题。

是否有标准技术可以避免这种情况?也许是不同的绘画模式?或者增加“涂料”的执行数量?

1 个答案:

答案 0 :(得分:0)

我已经缩放了过去绘制线的粗细来处理这个问题。关键是使用用于画布的比例的倒数。即如果画布以0.5的比例绘制,则线宽需要缩放1 / 0.5 = 2.您不能绘制比1像素更薄的线,因此线条不会变得更厚,它只是保持相同的厚度,也保留了预期的颜色。