自定义字体不适用于Rails

时间:2014-01-21 15:50:54

标签: css ruby-on-rails fonts

我已经阅读了很多关于让自定义字体在rails应用程序上运行的文章,但我仍然遇到问题。

我从dafont.com下载了X字体。我解压缩它,包中包含x.otf。然后我将它安装在我的计算机上,但是当我在我的应用程序中使用它时,字体会失真。

然后我从dafont.com下载了Y字体。我解压缩,它包含y.ttf。我没有将它安装在我的机器上,而是将其放在/ assets / fonts中。然后我在custom.css.scss文件中添加了以下内容。

@font-face {
  font-family: 'Nokia Pure Headline';    
  src: url('/assets/fonts/y.ttf');
  src: url('/assets/fonts/y.ttf?iefix') format('eot'),
  url('/assets/fonts/y.woff') format('woff'),
  url('/assets/fonts/y.ttf') format('truetype'),
  url('/assets/fonts/y.svg#webfont3AwWkQXK') format('svg');
  font-weight: normal;
  font-style: normal;
}

然后我在custom.css.scss样式表中调用它

body {
    font-family: y;
}

当我刷新仍然没有成功。有关X为何扭曲或Y不起作用的任何线索?

1 个答案:

答案 0 :(得分:1)

您可以将资产管道与字体一起使用。 首先添加application.rb:

config.assets.paths << Rails.root.join("app", "assets", "fonts")

custom.css.scss文件重命名为custom.css.scss.erb,并为每个字体文件使用asset_path,如下所示:

@font-face {
  font-family: 'Nokia Pure Headline';    
  src: url('<%= asset_path("y.ttf") %>');
  src: url('<%= asset_path("y.ttf?iefix") %>') format('eot'),
  url('<%= asset_path("y.woff") %>') format('woff'),
  url('<%= asset_path("y.ttf") %>') format('truetype'),
  url('<%= asset_path("y.svg#webfont3AwWkQXK") %>') format('svg');
  font-weight: normal;
  font-style: normal;
}