解决方案 »

  1.   

    想到了一个方向:从浏览器上下手,因为实际使用了什么语言、字体、以及页面渲染之后字符的实际宽度只有运行时才知道,假如用js获取宽度,就能用js动态设置控件高度了。
      

  2.   

    Java这里的话,可以根据Font获取FontMetrics,然后可以计算不同字符的宽度,高度,基准线等信息
    不过页面的话,很难判断,因为即使你指定了
    <span style="font: 16px/30px bold italic Arial">ABC</span>
    浏览器仍然可能会自行决定使用其他字体不过,CSS的话,可以用em做单位,控制宽度,ex做单位控制高度
    em单位的含义是,当前字体,显示字母M时候的宽度,对应于中文字体,就是一个字的宽度。ex类似,是X的高度。
      

  3.   

    阿拉伯文不好说,一则方向是RTL(右到左),二来,字体会连笔,同一个字符可能因为前后其他字符不一样,而呈现不同的宽度。