Esta ferramenta adiciona os recursos do OpenType chws , vchw , halt e vhal para fontes OpenType/TrueType quando algum desses recursos estiver ausente. Por favor, consulte o espaçamento entre o Oriente para os detalhes desses recursos.
Esta ferramenta usa o pacote de espaçamento entre asiáticos leste como seu principal mecanismo e tem as seguintes vantagens:
Para adicionar novas fontes à lista de fontes suportadas, consulte a seção Adicionando fontes abaixo.
pip install chws-toolSe você deseja clonar e instalar no modo editável com os pacotes de desenvolvimento:
git clone https://github.com/googlefonts/chws_tool.git
cd chws_tool
pip install -e ' .[dev] ' O exemplo a seguir adiciona os recursos ao input.otf e o salva ao diretório build . Se o argumento for um diretório, a ferramenta o expande para todas as fontes no diretório recursivamente.
add-chws input.otf Use a opção -o para alterar o diretório de saída ou a opção --help para a lista completa de opções.
add-chws input_dir -o output_dir O exemplo a seguir cria uma fonte com os recursos no diretório " build " se os recursos forem aplicáveis:
import chws_tool
def main ():
output_path = chws_tool . add_chws ( "fonts/input.otf" , "build" )
if output_path :
print ( f"Success! saved to { output_path } " )
else :
print ( "Skipped" )Se você preferir substituir as fontes existentes, pode omitir o diretório de saída.
import chws_tool
def main ():
chws_tool . add_chws ( "fonts/input.otf" )Se o seu programa usar o Asyncio:
import asyncio
import chws_tool
async def main_async ():
output_path = await chws_tool . add_chws_async ( "fonts/input.otf" , "build" )
if output_path :
print ( f"Success! saved to { output_path } " )
else :
print ( "Skipped" )
asyncio . run ( main_async ())Este pacote possui uma lista interna de fontes suportadas em sua configuração.
As fontes não na lista conhecida ainda são processadas com a configuração padrão, mas este pacote mostra uma mensagem de aviso.
Ao adicionar novas fontes à lista de fontes conhecida, o processo a seguir é recomendado:
add-chws com a opção --print-name pode imprimi-los.O objetivo principal desse processo é encontrar espaçamentos muito apertados ou colisões de glifos causadas pelos kernings.
Essa ferramenta possui regras heurísticas para determinar a aplicabilidade dos espaçamentos usando as métricas de glifos, mas assume que os glifos de pontuação de largura total têm espaçamentos internos suficientes de acordo com convenções lingüísticas, como no UAX#50 ou no clreq. Infelizmente, nem todas as fontes seguem as convenções.
Para executar o teste visual:
<script> de tests/test.html .Aqui está a lista de verificação e as dicas:
Outros controles no teste não são obrigatórios, mas podem ser úteis nos seguintes casos.
Consulte https://googlefonts.github.io/python#make-alease.