如何将HTML5canvas文本设置为粗体和/或斜体?

我以相当简单的方式将文本打印到canvas上:

var ctx = canvas.getContext('2d'); ctx.font = "10pt Courier"; ctx.fillText("Hello World", 100, 100); 

但是,如何将文本更改为粗体,斜体或两者? 任何build议来解决这个简单的例子?

您可以使用以下任何一种:

 ctx.font = "italic 10pt Courier"; ctx.font = "bold 10pt Courier"; ctx.font = "italic bold 10pt Courier"; 

欲了解更多信息,这里有一些资源:

  • 潜入HTML5
  • 如何在canvas中显示文字
  • HTML5canvas – 基础

任何人都会遇到这样的问题:请务必按照接受的答案中显示的顺序。

当我的订单错误时,我遇到了一些跨浏览器的问题。 拥有“10px Verdana bold”可以在Chrome中使用,但不能在IE或Firefox中使用。 切换到“粗体10px Verdana”如指出解决这些问题。 如果遇到类似问题,请仔细检查订单。

下划线不可能通过任何canvas方法或属性。 但我做了一些工作来完成它。 你可以看看@ http://scriptstock.wordpress.com/2012/06/12/html5-canvas-text-underline-workaround

你可以在这里findhttp://jsfiddle.net/durgesh0000/KabZG/