SVG字体标志符号:曾经见过的包含路径?

时间:2013-02-11 03:57:03

标签: fonts svg path glyph

我有一个由程序potrace创建的SVG文件源,它为多段字符的每个组件创建了一个单独的文件。如果我使用这些相同的< path>来简单地创建字形定义,则不会显示该字符。如果我将所有路径指令都插入到< glyph>的“d =”属性中角色显示。

SVG规范表示< glyph>元素是容器,并明确表示它们可以包含< path>元素。它只是不起作用(在Chrome,Opera,Safari中测试)。

这是我可以减少的最小例子:

<html>
<head>
  <meta charset="utf-8" />
  <title>SVG font test sample04</title>
  <style type="text/css">
     @font-face {
       font-family: 'sample04';
       src: url('sample04.svg#sample04') format('svg');
     }
    .sample04 { font-family: "sample04", verdana, helvetica; }
  </style>
</head>
<body class="sample04"> xE014  | &#xE014; | &#xE015; | </body>
</html>

sample04.svg

<?xml version="1.0" encoding="UTF-8" ?>
<svg version="1.1" xmlns = 'http://www.w3.org/2000/svg'>
  <defs>
    <font id="sample04" horiz-adv-x="800">
      <font-face font-family="sample04" />
      <glyph unicode="&#xE014;" horiz-adv-x="800" 
              d="M0,0h200v200h-200z M400,0h200v200h-200z"/>
      <glyph unicode="&#xE015;" horiz-adv-x="800">
        <path d="M0,0h200v200h-200z"/>
        <path d="M400,0h200v200h-200z"/>
      </glyph>
    </font>
  </defs>
</svg>

请注意,这两个字形具有相同的信息,第一个完全包含在&lt; glyph&gt;内。 d =属性,第二个将信息分成两个&lt; path&gt;。元素。我尝试过只使用一个&lt; path&gt;元素没有更好的结果。

这只是另一种情况,其中规格是闪闪发光的,浏览器不能胜任它?

注意:我非常关心的原因是我将近5000个这些SVG文件嵌入到一个字体中,并且真的不想真正想要进行XML转换来转换源代码......

0 个答案:

没有答案