Css 在rails 4中嵌入SVG图像中的字体
我使用的是Rails 4,并且有一个引用外部字体的SVG图像。以下是文件结构: app | --- assets | --- images | --- myImage.svg | --- MYRIADPRO-BOLDCOND.woff 应用程序 | ---资产 |---图像 |---myImage.svg |---MYRIADPRO-BOLDCOND.woff 我正在引用SVG文件中的字体,如下所示:Css 在rails 4中嵌入SVG图像中的字体,css,ruby-on-rails-4,svg,fonts,asset-pipeline,Css,Ruby On Rails 4,Svg,Fonts,Asset Pipeline,我使用的是Rails 4,并且有一个引用外部字体的SVG图像。以下是文件结构: app | --- assets | --- images | --- myImage.svg | --- MYRIADPRO-BOLDCOND.woff 应用程序 | ---资产 |---图像 |---myImage.svg |---MYRIADPRO-BOLDCOND.woff 我正在引用SVG文件中的字体,如
当我运行应用程序时,会找到图像,但相关字体不是,因此图像看起来很奇怪。没有抛出任何错误。我试着把这些文件放到public/image中,把字体放在自己的/fonts文件夹中,进行各种混合和匹配,但都没有用。当我在Chrome中直接查看svg时,它的字体是正确的
在rails 4中,在SVG中嵌入字体的适当方式是什么 您是如何引用SVG的?它是一个
?如果是这样,浏览器安全限制将阻止SVG引用其他文件。SVG必须是自包含的。您应该能够通过将字体嵌入为数据URL来实现这一点。解决方案
使用对象标记调用SVG允许调用外部字体文件
因此,在我的html.erb文件中,我引用了对象标记中的图像:
SVG文件,我的文件结构与我在问题中提到的相同 我用的是img标签。如何将字体嵌入为数据URL?我的字体文件相对于rails中的图像应该在哪里?谢谢你的帮助我才意识到。。我很困惑,因为我能够在另一个不使用Rails的网站上引用SVG中的字体文件。但我刚刚意识到我在那里使用了对象标记。我会试试看。是的,
应该会更好。但为了回答您的问题,请在这里搜索“字体数据uri”,如果您需要,您将获得大量关于如何执行此操作的答案。