是否可以将css应用于canvas标记中的文本

时间:2014-04-28 16:48:10

标签: javascript jquery css html5 canvas

我有一个画布标签,里面有文字(由jqplot图表呈现):

<canvas id="myCanvas" width="578" height="200"></canvas>

有没有办法让画布里的文字变成红色?我试过像这样添加css:

<canvas id="myCanvas" width="578" height="200" style="color: red;"></canvas>

根据我的理解,画布几乎就像一个图像。这是否意味着我无法在画布中选择东西?

2 个答案:

答案 0 :(得分:2)

由于您使用的是jqplot,因此您应该查看文档以了解如何更改文本的颜色。以下网页看起来很有前途,提到了textColor属性。

http://www.jqplot.com/docs/files/plugins/jqplot-canvasAxisLabelRenderer-js.html# $。jqplot.CanvasAxisLabelRenderer

这看起来也很有用

http://www.jqplot.com/docs/files/jqplot-core-js.html#Axis.tickRenderer

http://www.jqplot.com/docs/files/jqplot-axisTickRenderer-js.html# $。jqplot.AxisTickRenderer

基本上我会尝试找到在绘制每个刻度之前调用的事件(钩子)。找出即将绘制的刻度线。然后根据该信息更改文本颜色。我相信你可以用我提供给你的东西来实现这一点。

答案 1 :(得分:1)

您可以使用Javascript:

<script>
  var canvas = document.getElementById('myCanvas');
  var context = canvas.getContext('2d');

  context.font = '40pt Calibri';
  context.fillStyle = 'blue';
</script>

Source