自定义字体无法在rails中使用

时间:2017-08-21 23:20:11

标签: ruby-on-rails fonts asset-pipeline

就像标题所说的那样,我一直试图让这些自定义字体工作几个小时,我已经从这里听了很多其他的答案,其他教程都没有工作

home.scss

@font-face {
  font-family: 'audimatregular';
  src:url('audimatregular.otf');
  src:url('audimat.eot?#iefix') format('otf'),
    url('audimatbold.svg#audimat') format('otf'),
    url('audimatbolditalic.woff') format('otf'),
    url('audimatitalic.ttf') format('otf');
  font-weight: normal;
  font-style: normal;
}

.section1 {
  font-family: "audimatregular";
}

文件夹树

/app
+---assets
|   +---fonts
|   |       audimatbolditalic.otf
|   |       audimatitalic.otf
|   |       audimatbold.otf
|   |       audimatregular.otf
|   +---images
|   +---javascripts
|   +---stylesheets

rails version

Rails 5.1.3

编辑:服务器日志

Started GET "/" for 127.0.0.1 at 2017-08-21 21:13:09 -0400
   (0.2ms)  SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
Processing by HomeController#index as HTML
  Rendering home/index.html.erb within layouts/application
  Rendered home/index.html.erb within layouts/application (781.9ms)
Completed 200 OK in 879ms (Views: 869.2ms | ActiveRecord: 0.0ms)

感谢先进的帮助,这非常令人沮丧。

3 个答案:

答案 0 :(得分:0)

尝试将font-url助手添加到您的css:

src:font-url('...')

编辑: 以下是我的代码:

@font-face {
  font-family: 'audimatregular';
  src:font-url('AUdimat-Regular.otf');
  font-weight: normal;
  font-style: normal;
}

确保在进行更改后重新启动服务器。

答案 1 :(得分:0)

以下是我用来做的事情:

@font-face {font-family: 'Segoe UI'; 
src: url('/assets/segoe.eot?#iefix') format('embedded-opentype'), url('/assets/segoe.woff') format('woff'), 
url('/assets/segoe.woff2') format('woff2'), 
url('/assets/segoe.ttf')  format('truetype'), url('/assets/segoe.svg#svgSegoe') format('svg');}

无论您在资产中使用 where ,您都可以使用/assets/asset.jpg链接到该特定文件,因为管道会查看/assets下的所有文件夹。 - 但是,如果您添加自定义文件夹,例如 assets/fonts ,您必须将该文件夹添加到管道,请参阅this question了解如何执行此操作。如果您认为太复杂,只需将所有字体文件放在images-folder(或assets文件夹中的任何现有文件夹)中

希望这有帮助

答案 2 :(得分:0)

你使用脚手架吗?如果你在任何阻止自定义字体的地方都有scaffolds.css.scss。

另外,在加载应该具有该字体的页面时,您是否检查过rails服务器日志?它给出了什么错误?