我正在使用HTML5画布绘制线条。一条线是通过在多个中间点上调用drawLine()来形成的。例如:如何选择在HTML5 Canvas上绘制的线条?
(0,0) - >(10,10) - >(10,5) - >(20,12)
将显示为在图上一行。
一行的所有(x,y)坐标存储在一个数组中。
我想为用户提供在点击它时选择一条线的功能。在HTML5 Canvas中执行此操作变得困难,因为该行不是由对象表示的。我留下的唯一选择是首先找到与mousedown事件的(x,y)最接近的任何行的(x,y)坐标。一旦我检测到用户选择了哪条线,那么我需要用粗体颜色重新绘制线条或在其周围放上半透明的颜色。但是,我认为这会花费太多时间,因为它涉及到遍历所有行的所有(x,y)坐标。
我正在寻找可以帮助我以更省时的方式实现上述目标的方法。我应该考虑在HTML5中使用SVG吗?
任何建议,将不胜感激。
指 http://stackoverflow.com/questions/27332603/select-and-change-color-of -a-line-in-html5-canvas/27336242#27336242 答案有更清晰 –