Uma hospedagem simples de webfont inspirada no Google Fontes. Ele é executado em seu servidor, armazena e distribui arquivos webfont e gera CSS em movimento para incorporar fontes nas páginas da web.
Execute o seguinte código no console:
composer create-project finesse/web-fonts-repository webfonts Onde webfonts é um caminho para um diretório em que o repositório deve ser instalado.
Ou você pode fazer algumas coisas manualmente:
composer installcomposer run-script post-create-project-cmd Dê ao usuário que o servidor da Web executa permissões para escrever dentro do diretório logs .
Você pode simplesmente executar isso no console:
# Don't do it in production!
chmod 777 logs Faça do diretório public ser a raiz do documento do servidor da web. Ou apenas abra http: // localhost/público se você instalou o repositório na raiz do servidor da web.
Faça todas as solicitações para que os arquivos não existentes sejam tratados pelo public/index.php . Se o seu servidor estiver apache, ele já está pronto.
Faça o servidor adicione o Access-Control-Allow-Origin: * http-header aos arquivos de font. Caso contrário, alguns navegadores rejeitarão usando fontes do repositório.
mod_header.c esteja ligado (execute o comando a2enmod headers e reinicie o servidor para ativá -lo). Coloque seus arquivos de fonte (woff, woff2, ttf, OTF, EOT, SVG) no diretório public/fonts . Você pode separá -los por subdiretos. Você pode converter arquivos webfont usando transfonter.
Todas as configurações vão para a config/settings-local.php . Se você não o tiver, copie-o do arquivo config/settings-local.php.example .
Parâmetros:
displayErrorDetails Se os detalhes de erros devem ser enviados ao navegador. De qualquer forma, os erros são gravados nos logs/app.log . Você deve desativá -lo no servidor de produção.
logger / level Quantas mensagens devem ser registradas no arquivo. O valor é uma das constantes PsrLogLogLevel . Você pode ler mais sobre os níveis de log aqui.
fontsA lista de fontes disponíveis no repositório. Exemplo simples:
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.* ' ,
]
]
]
]; As teclas de matriz fonts são os nomes das famílias de fontes. As teclas de matrizes styles são os nomes dos estilos. Os números nos nomes de estilo são os pesos da fonte, i significa itálico.
Os caminhos do arquivo de fontes são dados em relação ao diretório public/fonts . Os caminhos do arquivo são os padrões de pesquisa do GLOB. Isso significa que o repositório deve considerar todos os arquivos que correspondem ao padrão como arquivos de fonte.
Você pode encontrar mais exemplos e possibilidades aqui.
Adicione uma tag <link> ao código HTML da página na qual você deseja incorporar uma fonte:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans:400,400i,700,700i|Roboto:300,400 " /> Onde http://web-fonts-repository.local é o URL raiz de um repositório de fontes da Web instalado.
As fontes necessárias são especificadas da mesma maneira que nas fontes do Google. As famílias de fontes são divididas por | , os estilos das famílias são divididos por , o nome da família é separado da lista de estilos usando : .
Você pode omitir a lista de estilos. Nesse caso, o estilo regular ( 400 ) é usado.
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans " /> Você pode especificar um valor para a propriedade de estilo de exibição de fontes usando o parâmetro display . Exemplo:
< link rel =" stylesheet " href =" http://web-fonts-repository.local/css?family=Open+Sans&display=swap " />Em seguida, incorpore uma fonte em um código CSS:
body {
font-family : 'Open Sans' , sans-serif;
}O projeto segue o versão semântica.
Isso significa que as versões do patch são totalmente compatíveis (ou seja, 1.2.1 e 1.2.2), as versões menores são compatíveis com versões anteriores (ou seja, 1.2.1 e 1.3.2) e as versões principais não são compatíveis (isto é 1.2.1 e 3.0). As versões de pré-lançamento (0.*) são um pouco diferentes: as versões do patch são compatíveis com versões anteriores e as versões menores não são compatíveis.
Mit. Consulte o arquivo de licença para obter detalhes.