无法在SVG中显示度数(°)

时间:2018-08-30 10:00:15

标签: html d3.js svg utf

我正在尝试在D3.js操纵的SVG中显示度数字符(°)。到目前为止,我尝试了不同的字符集,但我总是得到一个�代替,以下字符代码只是将其自身显示为常规文本:°°

我正在使用<meta charset="UTF-8">

您将如何显示该符号?也许有我可以设置的SVG属性?

1 个答案:

答案 0 :(得分:4)

我不明白为什么这应该是个问题。您说过将<meta charset="UTF-8">添加到了HTML文件中,但是您实际上是否使用UTF-8编码保存了它?一些纯文本编辑器默认使用其他字符集,例如iso-8859-1,因此您可能在某处有不正确的字符代码。如果您的Javascript存储在单独的文件中,请确保该文件也已正确编码。

还请记住,像&deg;这样的字符实体在SVG文件中将不起作用。

var svg = d3.select("body")
  .append("svg")
  .attr("width", 400)
  .attr("height", 100);

svg.append("text")
  .text("Water boils at 100°C")
  .attr("x", 20)
  .attr("y", 50)
  .attr("font-family", "sans-serif")
  .attr("font-size", "40px");
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>