我正在尝试在D3.js操纵的SVG中显示度数字符(°)。到目前为止,我尝试了不同的字符集,但我总是得到一个�代替,以下字符代码只是将其自身显示为常规文本:°
或°
。
我正在使用<meta charset="UTF-8">
。
您将如何显示该符号?也许有我可以设置的SVG属性?
答案 0 :(得分:4)
我不明白为什么这应该是个问题。您说过将<meta charset="UTF-8">
添加到了HTML文件中,但是您实际上是否使用UTF-8编码保存了它?一些纯文本编辑器默认使用其他字符集,例如iso-8859-1,因此您可能在某处有不正确的字符代码。如果您的Javascript存储在单独的文件中,请确保该文件也已正确编码。
还请记住,像°
这样的字符实体在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>