canvas画布上文字输入如何控制输入到画布边缘自动换行

发布于 2022-09-13 00:02:13 字数 271 浏览 14 评论 0

需求: 在canvas上实现文字输入

实现想法: 在 canvas 上有一个绝对定位的 input, 在鼠标点击设置 input 的 left, top, width; 开始文字输入, 在 input blur 事件读取 input 的值, 把文字画在canvas相同的位置上。

问题: input是固定宽的,可以一直录入超过原本input的宽度的文字长度。那么,该如何处理文字输入到画布边缘自动换行?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

三生池水覆流年 2022-09-20 00:02:13

需要做一个模型。
根据文字的长度自动断开为数组,然后创建新的文字行,进行错位渲染。

や莫失莫忘 2022-09-20 00:02:13
const text = ctx.measureText("Hello world")
console.log(text.width);

宽度自己算一算

也可以去 GitHub 找找相关的库, 例如:

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文