使用Rails 3.1 Asset Pipeline在web中存储webfonts

Mic*_*igh 4 ruby-on-rails ruby-on-rails-3.1 asset-pipeline

我正在尝试使用Rails 3.1 Asset Pipeline来存储我在多个应用程序中使用的一些字体.我已经尝试了几乎存储位置的每个组合,但我似乎无法让管道实际上拿起我的字体文件.他们会在public/assets我跑步时出现,rake assets:precompile但是他们没有任何asset_path助手可以使用,我也无法找出原因.

示例来自fonts.css.erb:

@font-face {
    font-family: 'MuseoSans';
    src: url('<%= asset_path('museosans_500_italic_webfont.eot') %>');
    src: url('<%= asset_path('museosans_500_italic_webfont.eot?#iefix') %>') format('eot'),
         url('<%= asset_path('museosans_500_italic_webfont.woff') %>') format('woff'),
         url('<%= asset_path('museosans_500_italic_webfont.ttf') %>') format('truetype'),
         url('<%= asset_path('museosans_500_italic_webfont.svg#webfontcWw5DXpH') %>') format('svg');
    font-weight: normal;
    font-style: italic;

 }
Run Code Online (Sandbox Code Playgroud)

输出ls app/assets/images(卡住了images因为assets/fonts没有工作,但同时缺乏工作):

museosans_100_italic_webfont.eot  museosans_500_webfont.eot
museosans_100_italic_webfont.svg  museosans_500_webfont.svg
museosans_100_italic_webfont.ttf  museosans_500_webfont.ttf
museosans_100_italic_webfont.woff museosans_500_webfont.woff
museosans_100_webfont.eot         museosans_700_italic_webfont.eot
museosans_100_webfont.svg         museosans_700_italic_webfont.svg
museosans_100_webfont.ttf         museosans_700_italic_webfont.ttf
museosans_100_webfont.woff        museosans_700_italic_webfont.woff
museosans_300_italic_webfont.eot  museosans_700_webfont.eot
museosans_300_italic_webfont.svg  museosans_700_webfont.svg
museosans_300_italic_webfont.ttf  museosans_700_webfont.ttf
museosans_300_italic_webfont.woff museosans_700_webfont.woff
museosans_300_webfont.eot         museosans_900_italic_webfont.eot
museosans_300_webfont.svg         museosans_900_italic_webfont.svg
museosans_300_webfont.ttf         museosans_900_italic_webfont.ttf
museosans_300_webfont.woff        museosans_900_italic_webfont.woff
museosans_500_italic_webfont.eot  museosans_900_webfont.eot
museosans_500_italic_webfont.svg  museosans_900_webfont.svg
museosans_500_italic_webfont.ttf  museosans_900_webfont.ttf
museosans_500_italic_webfont.woff museosans_900_webfont.woff
Run Code Online (Sandbox Code Playgroud)

我试过访问:

  • /assets/museosans_500_italic_webfont.svg
  • /assets/images/museosans_500_italic_webfont.svg
  • /images/museosans_500_italic_webfont.svg

它不会在任何地方捡到它.有什么想法吗?

Ben*_*Ben 6

您是否明确声明应该预编译字体文件?

config.assets.precompile + =%w(.js .css*.css.scss .svg .eot .woff .ttf)

这是开发,升级,生产,上述所有问题吗?

是否加载了@ font-face规则的样式表?