如何让svg以正确的字体显示特殊文本字符?

时间:2016-01-23 07:18:59

标签: svg unicode fonts glyph

我正在编写与音乐相关的电子书,并使用google readium电子书插件来测试我的作品。所有音乐符号和符号都在svg文件中。这项工作需要一种特殊的音乐符号字体,称为“Opus Text”。 b字符是音乐平面符号。英镑字符是音乐锋利的角色。 §是音乐的自然符号。

我在我的电脑上安装了字体,并且在我的svg文件中定义了字形。虽然,我相信Readium以及大多数电子书阅读器使用svg中的字形定义而不是PC上安装的字体。当我拨打b或#时,电子书正确显示“Opus Text”字体中的音乐符号。

但是,当我尝试为自然音符显示音乐符号时,它始终显示此符号§,而不是显示“Opus Text”字体中的正确符号。

我试图以这些方式声明字形的名称

<glyph unicode="§" ... >
<glyph unicode="&#167;" ... >
<glyph unicode="&#xa7;" ... >

我用这些方式引用它们

<text font-family="'Opus Text'">§</text>
<text font-family="'Opus Text'">&#167;</text>
<text font-family="'Opus Text'">&#xa7;</text>

这些都没有提供字体的“Opus Text”版本。所有三个都拉出符号的默认字体值。

对普通字母,非特殊字符进行相同的声明和引用,效果非常好。

unicode="b"
<text x="230" y="150" fill="#AA1800" font-size="36" font-family="'Opus Text'">b</text>

如何让这个§字符显示正确的字体?

谢谢,

0 个答案:

没有答案