代码
注意:本文的代码用了 jQuery,注意引入。
| 代码如下 | 复制代码 |
|
myCanvas.lineWidth = 5 |
|
解析
上边的代码,首先和之前话直线一样三个属性,之前没用过 lineCap,说的是直线首尾是什么样的,round 为圆角,为了让画的图没用那么生硬。
然后一个变量 paint 指定指针移动时是否允许画图,这个要说明下,我们要的效果是必须在鼠标按下并且指针在画布的有效区域才可以绘制,这个变量就是为了防止鼠标没有按下或者松开之后依然绘制。
mousedown() 事件,鼠标按下时,首先获得鼠标对于画布的相对坐标,然后把 paint 改成真,也就是允许绘制,并且建立起点。
mouseup() 事件,鼠标松开,把 paint 改成假,不允许继续绘制。
mousemove() 事件,鼠标移动,获取鼠标对于画布的相对坐标,然后如果 paint 为真,即允许绘制则建立一个点连线,并结束。
因为绘制的点巨多,所以就像乱七八糟的线一样~

这只是一个简单的例子,你当然可以留出几个按钮和输入框让用户自行控制线条宽度、样式以清空画布、保存绘制的图形之类的。
WAIC 2026 特别对话:当算力开始算账:谈 Token 经济学重塑芯片:拆解 AI 资本开支向上游转移
AdCopy.ai-AdCopy.ai是一家基于人工智能的数字广告平台的网站
Markprompt-Markprompt是一个生成GPT-4 prompts的工具
智能体手机热闹登场 WAIC:最难的一关还在底层
吉利银河TT Ultra开启预售 800V平台加持 3.8秒破百+6C超充
面积仅46mm²:xMEMS推出全球最小主动式微型风扇XMC-1200,专为AR、XR智能眼镜设计