Un simple hébergement Webfont inspiré des polices Google. Il s'exécute sur votre serveur, stocke et distribue des fichiers WebFont et génère CSS en déplacement pour intégrer des polices sur les pages Web.
Exécutez le code suivant dans la console:
composer create-project finesse/web-fonts-repository webfonts Où webfonts est un chemin d'accès à un répertoire où le référentiel doit être installé.
Ou vous pouvez faire certaines choses manuellement:
composer installcomposer run-script post-create-project-cmd Donnez à l'utilisateur que le serveur Web exécute des autorisations pour écrire dans le répertoire logs .
Vous pouvez simplement exécuter cela dans la console:
# Don't do it in production!
chmod 777 logs Rendez le répertoire public être la racine du document du serveur Web. Ou ouvrez simplement http: // localhost / public si vous avez installé le référentiel sur la racine du serveur Web.
Faites en sorte que toutes les demandes de fichiers non existantes soient traitées par public/index.php . Si votre serveur est Apache, c'est déjà fait.
Faites en sorte que le serveur ajoute l' Access-Control-Allow-Origin: * HTTP-Header dans les fichiers de police. Sinon, certains navigateurs rejeteront en utilisant des polices du référentiel.
mod_header.c est activé (exécutez la commande a2enmod headers et redémarrez le serveur pour l'activer). Mettez vos fichiers de police (WOFF, WOFF2, TTF, OTF, EOT, SVG) dans le répertoire public/fonts . Vous pouvez les séparer par des sous-répertoires. Vous pouvez convertir des fichiers Webfont à l'aide de Transfonter.
Tous les paramètres vont dans le fichier config/settings-local.php . Si vous ne l'avez pas, copiez-le à partir du fichier config/settings-local.php.example .
Paramètres:
displayErrorDetails Si les détails des erreurs doivent être envoyés au navigateur. Quoi qu'il en soit, des erreurs sont écrites dans les logs/app.log . Vous devez le désactiver sur le serveur de production.
logger / level Combien de messages doit être enregistré dans le fichier. La valeur est l'une des constantes PsrLogLogLevel . Vous pouvez en savoir plus sur les niveaux de journal ici.
fontsLa liste des polices disponibles dans le référentiel. Exemple simple:
return [
// ...
' fonts ' => [
' Open Sans ' => [
' styles ' => [
' 300 ' => ' OpenSans/opensans-light.* ' ,
' 300i ' => ' OpenSans/opensans-light-italic.* ' ,
' 400 ' => ' OpenSans/opensans-regular.* ' ,
' 400i ' => ' OpenSans/opensans-regular-italic.* ' ,
]
],
' Roboto ' => [
' styles ' => [
' 300 ' => ' Roboto/roboto-light.* ' ,
' 400 ' => ' Roboto/roboto-regular.* ' ,
' 500 ' => ' Roboto/roboto-medium.* ' ,
' 700 ' => ' Roboto/roboto-bold.* ' ,
]
]
]
]; Les clés des arrailles des fonts sont les noms des familles de polices. Les clés des réseaux styles sont les noms des styles. Les nombres dans les noms de style sont les poids de police, i représente l'italique.
Les chemins de fichier de police sont donnés par rapport au répertoire public/fonts . Les chemins de fichier sont les modèles de recherche GLOB. Cela signifie que le référentiel doit considérer tous les fichiers correspondant au modèle comme des fichiers de police.
Vous pouvez trouver plus d'exemples et de possibilités ici.
Ajoutez une balise <link> au code HTML de la page sur laquelle vous souhaitez intégrer une police:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans:400,400i,700,700i|Roboto:300,400 " /> Où http://web-fonts-repository.local est l'URL racine d'un référentiel de polices Web installé.
Les polices requises sont spécifiées de la même manière que sur les polices Google. Les familles de polices sont divisées par | , les styles de familles sont divisés par , le nom de famille est séparé de la liste des styles en utilisant : .
Vous pouvez omettre la liste des styles. Dans ce cas, le style ordinaire ( 400 ) est utilisé.
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans " /> Vous pouvez spécifier une valeur pour la propriété de style-disus de police à l'aide du paramètre display . Exemple:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans&display=swap " />Ensuite, intégrez une police dans un code CSS:
body {
font-family : 'Open Sans' , sans-serif;
}Le projet suit le versioning sémantique.
Cela signifie que les versions du patch sont entièrement compatibles (c'est-à-dire 1.2.1 et 1.2.2), les versions mineures sont compatibles vers l'arrière (IE 1.2.1 et 1.3.2) et les versions majeures ne sont pas compatibles (IE 1.2.1 et 3.0). Les versions de pré-libération (0. *) sont un peu différentes: les versions du patch sont compatibles vers l'arrière et les versions mineures ne sont pas compatibles.
Mit. Voir le fichier de licence pour plus de détails.