我已經詳盡搜索了一個答案,我希望stackoverflow將再次來拯救。什麼是html5 canvas文本中字體大小的有效粒度?
如果我們設置上下文的字體大小,它似乎允許任意精度:
fontSize = 11.654321;
context.font = 'bold ' + fontSize + 'px sans-serif ';
檢查上下文對象將顯示字體大小已設置極其精確。但是,我注意到上下文對象的measureText()
方法總是返回一個整數值(推測爲上限值)。有誰知道顯示文本時使用的實際精度(使用基於像素的字體大小時)?
包含這些信息的文檔鏈接就足夠了(只要它實際上通知精度)。
如果有人問起,我試圖調整字體做這樣的事情,以適應文本到指定寬度:
var fontSize = 12;
context.font = 'bold ' + fontSize + 'px sans-serif ';
var text = "whatever";
var maxWidth = 200;
var currentWidth = context.measureText(text).width;
var adjustment = maxWidth/currentWidth;
fontSize *= adjustment;
context.font = 'bold ' + fontSize " 'px sans-serif ';