XL-FONTLOAD
Rede de fonte chinesa. Corte a fonte de acordo com a palavra frequência e execute o carregamento preguiçoso na extremidade frontal. Nenhum suporte ao programa de back -end é necessário.
- Arquivo de Frequência Palavra (Word-Frequency.CSV) Arquivo de Demonstração Fonte: Ministério da Educação
- Lista as fontes de conversão. Lugares nas fontes/ diretório, com uma estrutura não convencional. Procura automaticamente todos os arquivos de final .ttf.
- Para cada fonte:
- Liste todos os personagens suportados
- Entre eles, quinhentos caracteres, marcas de pontuação, cartas em inglês, números etc. são comumente usadas como o primeiro arquivo de fonte.
- Em seguida, se os caracteres restantes aparecerem na tabela de frequência da palavra, um arquivo de caracteres será formado de acordo com cada cem caracteres da frequência da palavra.
- Os caracteres não correlacionados restantes são formados em um arquivo de fonte para cada cem caracteres.
- Todos os arquivos de fonte são colocados no mesmo diretório e os nomes dos arquivos são separados por números.
- Tabela de correspondência de código de palavras/fonte de saída para saída para verificação rápida do front-end.
Uso / compilador
Este projeto usa nodejs. Primeiro, instale o NodeJS e o NPM e use o NPM Install para criar o diretório Node_modules. Instruções de referência:
curl -sL https://deb.nodesource.com/setup_8.x | sudo bash -
npm install
Organize as fontes que você deseja converter para as fontes/ diretório, com a estrutura do diretório irrestrita. O programa digitalizará automaticamente todos os arquivos de fonte.
- Atualmente, apenas o TTF é comido ~ frio.
Prepare o arquivo de font word-frequency.csv
Executar o conversor compilar.sh
O arquivo de fonte é emitido no ativo/ diretório.
Uso / Frontend
Método de uso básico:
xfl.load("http://path/to/scattered/font/folder/", options, function(font) {
font.sync(stringToDisplay);
})
Exemplos de fontes de carga dinamicamente com base no conteúdo instantâneo:
/* assume we have "textarea" variable to be an input box accepting user input */
xfl.load("http://path/to/scattered/font/folder/", options, function(font) {
textarea.addEventListener("keyup", function() {
font.sync(textarea.value);
});
})
Se você não planeja fazer seu próprio arquivo de fonte, poderá usar um conjunto de arquivos de fonte que preparamos através das páginas do GitHub. A localização da biblioteca do projeto está aqui. Se você deseja usá-lo, pode usar este site: http://plotdb.github.io/xl-fontset/alpha/<font Nome>, por exemplo:
xfl.load("http://plotdb.github.io/xl-fontset/alpha/瀨戶字体", function(font) { ...
Altere "<Font Name>" para a fonte que você deseja usar. Uma lista de fontes atualmente suportadas pode ser encontrada aqui, incluindo fontes Wang Hanzong 42, esculturas de pedra, estação Cool, Cwtext-Q, fontes SETO, etc., um total de 57 fontes.
Deve -se notar que ainda existem alguns problemas ao converter fontes, o que pode levar à falta de caracteres em algumas fontes. Além disso, nem todas as fontes contêm caracteres chineses completos, use -os a seu próprio critério.
Opções:
- Fontname - Nome usado na família de fontes. Padrão de ser o nome da base do URL.
- (TBD) Texto - Pré -carga Os arquivos que contêm texto nesta opção.
Direção futura
- Otimização de transmissão (otimização)
- Levando em consideração a correlação do caractere, o espaço do personagem pode ser criado através do Mochi e do corpus específico, e agrupar os caracteres relacionados como base para a redução de fontes através do algoritmo de agrupamento (como o agrupamento de means K), reduzindo assim o número de arquivos que precisam ser carregados.
- Otimize ainda mais o tamanho do arquivo.
- Forneça módulos de arquivo nginx e apache, permitindo que os navegadores obtenham os arquivos necessários através de uma única solicitação HTTP (por exemplo, obtenha https: // path/to/font/1+2+3+4)
- Problemas de qualidade (qualidade)
- A peça de palavra ausente pode ser usada para gerar aprendizado on -line usando estilo adversário e preencher automaticamente.
- A rede de geração adversária acima mencionada também pode ser usada para ajudar na geração de novas fontes.
- outro
- Defina a parametrização e, ao criar arquivos de fonte, você pode personalizar a fonte definida de acordo com suas necessidades, configurando -os.
- O Google Font implementou técnicas semelhantes para carregar fontes chinesas. Ver:
- https://developers.google.com/web/fundamentals/performance/ottimizing-content-efficiente/webfont-optimization
- Exemplo CSS:
- https://fonts.googleapis.com/css?family=zhi-mang-xing&display=swap
LICENÇA
- Arquivos de fonte: Todos os arquivos de fonte com curadoria são colocados separadamente em outro repo (XL-Fontset) e são GPL ou SIL-O-OFL licenciados. (OK para uso comercial)
- Os códigos de origem são liberados sob licença do MIT.