一个由Google字体启发的简单WebFont托管。它在您的服务器上运行,存储和分发WebFont文件,并生成CSS,以将字体嵌入网页上。
在控制台中运行以下代码:
composer create-project finesse/web-fonts-repository webfonts webfonts是通往应该安装存储库的目录的途径。
或者您可以手动做一些事情:
composer installcomposer run-script post-create-project-cmd代表Web服务器运行的权限在logs目录中写入的用户。
您可以在控制台中运行此操作:
# Don't do it in production!
chmod 777 logs使目录public成为Web服务器的文档根。或者,如果将存储库安装到Web Server root,则只需打开http:// localhost/public。
通过public/index.php处理所有不存在文件的请求。如果您的服务器是Apache,则已经完成。
将服务器添加到字体文件中的Access-Control-Allow-Origin: * http-header。否则,有些浏览器将使用存储库中的字体拒绝。
mod_header.c模块已打开(运行a2enmod headers命令并重新启动服务器以将其打开)。将您的字体文件(Woff,Woff2,TTF,OTF,EOT,SVG)放在public/fonts目录中。您可以通过子目录将它们分开。您可以使用Transfonter转换WebFont文件。
所有设置都转到文件config/settings-local.php 。如果没有它,请从文件config/settings-local.php.example复制它。
参数:
displayErrorDetails是否应将错误详细信息发送到浏览器。无论如何,错误都写入文件logs/app.log 。您应该在生产服务器上关闭它。
logger / level应该记录多少消息到文件。该值是PsrLogLogLevel常数之一。您可以在此处阅读有关日志级别的更多信息。
fonts存储库中可用的字体列表。简单示例:
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.* ' ,
]
]
]
]; fonts数组键是字体家庭名称。 styles阵列键是样式名称。样式名称中的数字是字体权重, i代表斜体。
字体文件路径相对于public/fonts目录给出。文件路径是Glob搜索模式。这意味着存储库应将所有将模式匹配的文件视为字体文件。
您可以在这里找到更多示例和可能性。
将<link>标记添加到要嵌入字体的页面的HTML代码:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans:400,400i,700,700i|Roboto:300,400 " />其中http://web-fonts-repository.local是已安装的Web字体存储库的根URL。
所需字体的指定方式与Google字体相同。字体家庭分为| ,家庭名称与样式列表分开,使用以下方式分开:
您可能会省略样式列表。在这种情况下,使用常规样式( 400 )。
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans " />您可以使用display参数指定字体 - 显示样式属性的值。例子:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans&display=swap " />然后在CSS代码中嵌入字体:
body {
font-family : 'Open Sans' , sans-serif;
}该项目遵循语义版本控制。
这意味着贴片版本完全兼容(IE 1.2.1和1.2.2),次要版本是向后兼容的(即1.2.1和1.3.2),并且主要版本不兼容(即1.2.1和3.0)。预释放版本(0.*)有些不同:补丁版本是向后兼容的,次要版本不兼容。
麻省理工学院。有关详细信息,请参见许可证文件。