Officiel de la façon d'ajouter des polices personnalisées pour Rails 4?
Je suis à la recherche comment ajouter des polices personnalisées pour mon application Rails, par exemple en ajoutant une fonts
dossier dans le dossier des actifs, - et je ne trouve pas de "officielle" des Rails de chemin sur la façon de le faire.
Oui, il ya beaucoup de questions/réponses ici sur DONC sur la question, toutes apparemment avec leur propre hacks. Mais ne devrions pas une pratique courante passer sous les Rails " fameuse "convention over configuration"?
Ou si je l'ai raté - où se trouve la documentation de référence sur la façon d'organiser les polices dans une application Rails?
- il n'y a aucune mention de polices de caractères dans la doc officielle pour l'asset pipeline - guides.rubyonrails.org/asset_pipeline.html
- référence complète - stackoverflow.com/questions/10905905/...
Vous devez vous connecter pour publier un commentaire.
Oui le lien donné l'expliquera bien, toutefois, si u besoin d'une autre explication détaillée puis ici, il est
Tout d'abord d'utiliser des polices personnalisées dans votre application, vous devez télécharger les fichiers de police, vous pouvez essayer https://www.1001freefonts.com/ et de regarder pour les polices
Quelques-uns des plus populaires de la police formats de fichier sont principalement .feo(Ouvert de Type de Format) .ttf(True Type de Format) .woff(Web Open font Format)
Vous pouvez déplacer les polices téléchargées à votre dossier app dans le dossier app/assets/fonts/
Après avoir téléchargé le fichier que vous avez besoin de "déclarer" les polices que vous utilisez dans votre css comme ceci
Enfin, vous pouvez utiliser la police de caractères de la famille que vous venez déclaré partout où vous voulez, comme ce
Espère que cette aide.
src
ligne a besoin d'être modifié poursrc: url(KaushanScript-Regular.otf) format("truetype");
asset-url()
afin qu'il fonctionne sur la production quand il fait précompilés et un hachage digest est ajoutée au nom de fichier?format()
est de fournir le navigateur avec un indice quant à ce format une ressource de police est, donc, il peut choisir un adapté. Les types disponibles sont:woff
,woff2
,truetype
,opentype
,embedded-opentype
, etsvg
.Fait...
De télécharger et sauvegarder les fichiers de police (eot, woff, woff2...) dans votre
actifs/fonts/ répertoire
<< Rails.de la racine.join("app", "actifs", "polices")
Ce que cela ne se fait-il
précompilation votre dossier de polices juste comme il le fait par défaut avec votre
images, feuilles de style, etc.
et assurez-vous que cette ligne est définie à vrai config.les actifs.activée =
vrai
Dans votre sass/scss ou même en ligne avec
<script>
tagNotez que vous devez utiliser le
font-url
helper au lieu de css'url
à l'adresse de l'empreinte faite par les Rails quand il précompilation des actifsEnfin, définir la police de caractères de la famille dans vos fichiers CSS
GRATUIT ASTUCE:
Ceci étant dit, la meilleure façon en termes de performances avec la JS pour que ces polices chargés de manière asynchrone. Cochez cette loader: https://github.com/typekit/webfontloader
J'ai eu quelques difficultés avec les approches présentées ci-dessus, parce que la production de la css n'a pas été pointant vers le compilé police ttf, j'ai donc utilisé avec succès cette approche alternative emprunté https://gist.github.com/anotheruiguy/7379570:
Place tous les fichiers de police dans
assets/stylesheets/fonts
. par exemple,assets/stylesheets/fonts/digital_7.ttf
.J'ai défini dans un .scss fichier que nous utilisons:
J'ai utilisé la police personnalisée dans d'autres .scss fichiers:
Cela dit, beaucoup plus propre façon de le faire est de mettre la définition de la police (digital_7_mono.ttf dans cet exemple) sur un site distinct.
Si vous utilisez Cloudfront, par exemple, dans un Cloudfront répertoire appelé
my_path
, télécharger vos fichiers de police, puis de définir un fichier css (par exempledigital_fonts.css
)Dans votre code html, à l'intérieur de la
<head>
tag, ajouter:La seule façon qui ont travaillé pour moi c'était ça: