0
我注意到,勾画一个框并填充一个框会导致不同大小的框。在处理命中检测时,这有点让人头痛。例如,如果我有一个我正在绘制的圆和我正在绘制的一个矩形,我想知道这两个相交是否用于动画。有没有办法解决?一个简单的解决方案是将线宽设置为零,但这不是一个选项。html canvas sketch vs填充宽度
我注意到,勾画一个框并填充一个框会导致不同大小的框。在处理命中检测时,这有点让人头痛。例如,如果我有一个我正在绘制的圆和我正在绘制的一个矩形,我想知道这两个相交是否用于动画。有没有办法解决?一个简单的解决方案是将线宽设置为零,但这不是一个选项。html canvas sketch vs填充宽度
您需要将lineWidth添加到描边对象的计算中。
调用fillRect(0,0,60,60)
让你一个60x60
箱开始(0,0)
,但如果你正在抚摸你必须添加一半的线宽的每个侧面。
所以一个线宽6
打电话strokeRect(0,0,60,60)
真的让你66x66
框起始于(-3,-3)
。
由于斜率的原因,数学可能会略有不同,但对于大多数应用程序,您可以忽略它。
一个简单的解决方案可能会或可能不会与您的程序一起飞行,对于每个填充的对象,调用fillRect和strokeRect。该对象将变得稍大,但它的尺寸与您的描边对象一致。这种方法的有效性当然完全取决于你迄今为止写的东西。
谢谢,这正是我所期待的。 – puk 2011-03-11 20:26:58