2012-04-20 71 views
1

我從不同的應用程序獲得了來自用戶輸入的html格式的文本。 (帶字體b br ul等,不同的字體和顏色在一個片段中)將Html文本添加到Html5 Canvas

我想在畫布上寫這個。

context.write("<b>Hello</b> World <font...>more text </font>");

我怎麼能做到這一點?

+0

哇靠,' '。 – JJJ 2012-04-20 11:52:47

+0

你需要把它寫在'canvas'上嗎?你打算以某種方式操縱它嗎?否則,您可以創建一個帶有文本的「div」,並​​將其放置在畫布前。 – robertc 2012-04-20 11:58:25

+0

是的,我需要放在畫布上。我想用其他一些元素來製作它。 – 2012-04-20 12:22:49

回答

0

首先,如果需要,您必須提供所有使用@ font-face的字體。
然後你必須描述繪製文本所需的所有操作,記住畫布只是一個繪圖表面。你必須遍歷這些步驟:

  1. 指定字體使用:context.font =「宋體12px的大膽」(相同的語法CSS字體屬性)
  2. 測量,這將是該字符串提請知道在哪裏放置下一個:context.measureText(TXT).WIDTH
  3. 繪製文本(填充或描邊):context.fillText(TXT,X,Y)