L'emballage d'une police avec une extension Google Chrome
Je veux utiliser autre chose que les polices standard avec mon extension Chrome. J'étais excité au sujet de la possibilité d'utiliser les Polices Web de Google, mais il semble que pourrait encourir une pénalité pour le transfert de polices web sur le réseau à chaque fois que votre extension utilise, au point d'affecter les performances de mon extension. Puis-je avoir une option pour l'emballage d'une police avec mon extension qui fonctionne sur tous les Chrome de plates-formes (Windows/Mac/etc.)? Merci d'avance
Vous devez vous connecter pour publier un commentaire.
Choisissez votre police. Comme exemple, je vais prendre "Passage Ultra Élargi". Il est un exemple de comment l'ajouter à votre page:
Ne prendre que le
href
et de l'ouvrir dans le navigateur. Vous verrez quelque chose comme ceci:Prendre le premier paramètre de
url
valeur desrc
propriété (http://themes.googleusercontent.com/static/fonts/stintultraexpanded/v1/FeigX-wDDgHMCKuhekhedWmdhyVWfbygZe-w47Q2x_f3rGVtsTkPsbDajuO5ueQw.woff).Maintenant télécharger ce fichier.
Utiliser le paramètre de
local
valeur desrc
bien comme nom de fichier (Passage Ultra Élargi)Moyen facile est de téléchargement c'est à l'aide de wget:
Maintenant créer le fichier css et ajouter le contenu que vous avez vu avant.
Mais vous devez changer la valeur de la
src
de la propriété. Supprimer tous leslocal
s et ajusterurl
. Il convient de qch comme ceci:Maintenant, ajoutez votre fichier css à l'extension et à l'utilisation de la police:
popup.html
Si vous souhaitez utiliser cette police dans content_script vous devez ajuster
url
dans votre css:Vous pouvez ajouter autant de
@font-face
règles dans votre css que vous le souhaitez.Avis:
local
valeur danssrc
propriété vous indique le nom qui doit être utilisé pour stocker. C'est une bonne idée d'utiliser ce nom.Deuxième avis: Si vous utilisez google comme prévu, votre navigateur serait de vérifier si cette police est déjà disponible. Si ce n'est pas le cas, alors il devrait être téléchargés et stockés. Alors, la prochaine fois il ferait usage de la police qui a été précédemment enregistrées.
De Chrome 37 (peut-être plus tôt), vous devez mentionner la police comme une ressource web accessible à l'extension du fichier manifeste:
Sinon, vous voyez un message d'erreur comme:
__MSG_@@extension_id__
besoin d'être remplacer par mon id? Pour quelqu'un d'autre curieux, la réponse est "l'ensemble de la partie"C'est assez vieux, mais pour ceux qui sont encore avoir des problèmes avec cela, il est possible de charger le fichier de police avec javascript. J'ai eu de la difficulté à obtenir une police de la déclaration de travailler dans l'ombre dom; tous les styles charge mais chrome voudrais simplement ignorer le font-face déclaration complètement.
Cela fonctionne à merveille pour moi. À l'aide de font-face est sans doute préférable, mais je suis sûr que mon cas est un bug dans chrome. Voici les specs pour elle.
Demander à l'utilisateur d'autorisations d'accès à des Polices Web de Google est beaucoup moins d'effort que leur incorporation (même si cela peut faire sens parfait pour une éventuelle off-line scénarios).
manifeste.json
@import
propriété css dans un de vos fichiers css.