
不需要考虑旋转角度。
1 abaaba0909 2022 年 8 月 12 日 根据你图片大小按百分比计算一下就行了 |
2 lzj724 2022 年 8 月 12 日 export function getDWordLength(str) { let chinaLen = 0 let otherLen = 0 for (let i in str) { if (str[i].charCodeAt() <= 255) { otherLen++ } else { chinaLen++ } } return chinaLen + otherLen / 2 } export function getStrWidth(str, fOntSize= 12, letter = 0) { return getDWordLength(str) * (fontSize + letter) } |
3 kkeep 2022 年 8 月 12 日 via Android 水印文字不是固定的么。字体啥的 |
4 arch9999 2022 年 8 月 12 日 000000 000000 000000 000000 000000 001100 |
5 reter 2022 年 8 月 12 日 #2 的做法不可取 OP 的需求是获取渲染文字时所占用的宽度,不是简单用 "字符串的长度 * 字体大小" 就可以解决的。 比较显著的因素有:字体的选择,字体大小,字符的间距,行高,字体是等宽还是非等宽,渲染效果,实际的渲染环境等。这些都会影响渲染后字体的宽度和高度。 建议查阅所使用绘图的 API 文档,一般都会提供 API 用于测量字体的渲染信息。比如 https://docs.oracle.com/javase/7/docs/api/java/awt/FontMetrics.html https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/measureText 关键词 FontMetrics, measureText |
7 byzod 2022 年 8 月 13 日 其实还挺麻烦的 精度要求不高偷懒可以直接按中文、字母 m 宽度和 x 高度来估算 css 就是这样的 |