获取实际文字宽度

Posted vieber

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了获取实际文字宽度相关的知识,希望对你有一定的参考价值。

问题背景

有时候我们需要获取一个div的实际宽度,但是里面的是文字,比如文字只占了一半,但是这个div的宽度是100%,这样就没法获取这个div的实际宽度了

解决方案

使用canvas的这个api去获取CanvasRenderingContext2D.measureText()
CanvasRenderingContext2D.measureText() 方法返回一个关于被测量文本TextMetrics 对象包含的信息(例如它的宽度)。
他就能把被测量文本的实际宽度测量出来。

var canvas = document.getElementById("canvas");
var ctx = canvas.getContext("2d");

var text = ctx.measureText("foo"); // TextMetrics object
text.width; // 16;

以上是关于获取实际文字宽度的主要内容,如果未能解决你的问题,请参考以下文章

Android获取片段中的布局高度和宽度

使用jq获取文字的宽度

Android获取片段宽度

一起Talk Android吧(第四百七十一回:如何获取文字的长度和宽度)

Android怎样获取文字的宽度

swift常用代码片段