🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# step1 需求 本页面大约有10个标签需要渲染 技术 canvas 思路分析 初步计算 1. 确定一个 基点(x1,y1) 2. 在固定的x1里,根据canvas.Height 得到 y => [min,Height] 3. 随机获取 y1. temp = Height - y1,得到点的相对位置。 4. 如果temp 大于 Height/2 ,证明点在上半区, 执行 5 如果temp 小于 Height/2 ,证明点在下半区 5. 执行渲染,并且将 y => [temp + text.size + 10, Height] , x1 += 10 * text.szie 为字体的大小, 6. 执行渲染, 并且将 y => [min, temp], Height = temp 实现思路二: 1.确定一个基点(x1,y1) 2.计算字体的大小,根据等级range确定一个字体的大小, size = item.text.length * (Number(range)*d + 6) + size;