html5 - 請(qǐng)問利用font-face定義的字體怎么在canvas里應(yīng)用?
問題描述
請(qǐng)問利用font-face定義的字體怎么在canvas里應(yīng)用?
問題解答
回答1:<style> @font-face { font-family: '_________'; //下劃線填字體名稱 src: url('_________'); //下劃線填字體文件 }</style><script type='text/javascript'> function draw() { var ctx = document.getElementById(’canvas’).getContext(’2d’); var img = new Image(); img.onload = function(){ ctx.drawImage(img,0,0); ctx.beginPath(); ctx.fillStyle = ’#000’; ctx.font = '60px Automania'; ctx.textBaseline = ’top’; ctx.fillText(’what this font looks’, 0, 5); ctx.stroke();}img.src = ’img.png’; }</script><input onclick='draw()' type='button' value='test' /><canvas height='800'></canvas>
不過不建議在canvas中使用自定義字體,因?yàn)樽煮w文件加載太慢。。
回答2:1.必須再等到字體下載完成之后再去渲染canvas,字體才能有作用 2.canvas中所引用的字體必須在文檔流中有標(biāo)簽(span,p等)引用改字體!!!這就是最大的坑了!!!
相關(guān)文章:
1. 點(diǎn)擊頁面就自動(dòng)輸入到mysql.求解2. java - IDEA從SVN檢出項(xiàng)目 并在tomcat上運(yùn)行 求詳細(xì)流程3. node.js - nodejs使用formidable上傳文件問題4. javascript - windos下第一次用Django無法正確創(chuàng)建工程目錄5. node.js - 帶有node_modules目錄的項(xiàng)目,用phpstorm打開速度極慢,怎么解決?6. java - 多叉樹求值,程序高手,算法高手看過來7. javascript - JS用ajax爬取百度外賣店家信息8. android - 安卓做前端,PHP做后臺(tái)服務(wù)器 有什么需要注意的?9. html5 - 有人做過防微信app界面的H5 demo嗎?10. css - 請(qǐng)問B站頂部的模糊半透明導(dǎo)航條是怎么實(shí)現(xiàn)的呢?
