所以我有一个包含文本元素的SVG文件。例如:
<text transform="matrix(1 0 0 1 195.248 207.165)" fill="#999999" font-family="'LeagueGothic'" font-size="24">Europe</text>
当我将字体系列指定为iOS中包含的内容(如Helvetica或Futura)时,一切正常。但是,一旦我指定了通过@ font-face包含的字体,它就无法在iOS上运行,而在桌面Safari,Chrome,Firefox以及Opera上都可以使用。
否则@ font-face字体在整个页面中都可以正常工作,除了SVG部分。
尝试将SVG文件包括为<embed>
,<object>
和<img>
,但没有帮助。有趣的是,当我尝试内联SVG(即直接在HTML中的SVG代码)时,字体是可以的,但它不会从SVG文件中绘制任何其他内容。
我在iOS 4.2上。尝试过SVG 1.1,1.1 Tiny,1.2等等。
这是一个错误还是我错过了什么,拜托?感谢。
示例SVG文件:http://pastie.org/1637291
答案 0 :(得分:3)
您的svg示例没有@ font-face规则,也没有任何外部样式表的引用。也许解决方案可能是在svg文件本身中包含带有该定义的样式表。
例如:
<style>
@font-face { font-family: foo; src: url(somefont.svg#theFontElementId) format("svg"); }
</style>
如果您使用例如<object>
,<embed>
,<iframe>
或<img>
引用svg部分,并在页面的其他位置看到webfont,那么缺少样式表的事情可能是事业。