O AFDKO é um conjunto de ferramentas para construir arquivos de fontes OpenType a partir de dados de fontes PostScript e TrueType.
Este repositório contém os arquivos de dados, scripts Python e fontes para os programas de linha de comando que compõem o AFDKO. O projeto usa a licença Apache 2.0 Open Source. Observe que o AFDKO faz uso de diversas dependências, listadas no arquivo requirements.txt, que serão instaladas automaticamente se você instalar o AFDKO com pip
. A maioria dessas dependências são licenças BSD ou MIT, com exceção de tqdm
, que é MPL 2.0.
Consulte a Visão Geral do AFDKO para uma descrição mais detalhada do que está incluído no pacote.
Consulte o wiki para obter informações adicionais, como links para materiais de referência e projetos relacionados.
A porta Python do psautohint foi (re)integrada ao repositório AFDKO como "otfautohint"
Mais informações podem ser encontradas em docs/otfautohint_Notes.md
O AFDKO requer Python 3.9 ou posterior. Ele deve funcionar com qualquer Python > 3.9, mas ocasionalmente os componentes e dependências da cadeia de ferramentas não acompanham o ritmo das principais versões do Python, portanto, pode haver algum tempo de atraso enquanto eles se atualizam.
As versões estão disponíveis no Python Package Index (PyPI) e podem ser instaladas com pip.
Nota para usuários do macOS: recomendamos que você não use o sistema Python. Entre outros motivos, algumas versões do macOS vêm com Python 2 e a versão mais recente do AFDKO está disponível apenas para Python 3. Você pode encontrar instruções sobre como usar o Brew para instalar o Python 3 no macOS aqui: Instalando o Python 3 no Mac OS X. Também : pyenv é uma ótima ferramenta para instalar e gerenciar várias versões do Python no macOS.
Nota para todos os usuários: recomendamos FORTEMENTE o uso de um ambiente virtual Python ( venv
) e o uso de python -m pip install <package>
para instalar todos os pacotes (não apenas AFDKO). Chamar pip install
diretamente pode resultar na chamada pip
errado e no destino do pacote no local errado. A combinação do uso de venv
+ python -m pip install
ajuda a garantir que os pacotes gerenciados pelo pip cheguem ao lugar certo.
Nota para usuários de Linux (e usuários de outras plataformas que não sejam macOS ou Windows): Quando não houver uma "roda" pré-construída para sua plataforma, pip
tentará construir as porções C e C++ do pacote a partir do código-fonte. Este processo só terá sucesso se as ferramentas de desenvolvimento C e C++ e o libuuid estiverem instalados. Veja a compilação da fonte abaixo.
Opção 1 (recomendado)
Crie um ambiente virtual:
python -m venv afdko_env
Ative o ambiente virtual:
macOS e Linux
source afdko_env/bin/activate
Windows
afdko_env S cripts a ctivate.bat
Instale o afdko:
python -m pip install afdko
A instalação do afdko dentro de um ambiente virtual evita conflitos entre suas dependências e outros módulos instalados globalmente.
Opção 2 (não recomendada, a menos que haja um conflito global)
Instalação do usuário local afdko (informações):
python -m pip install --user afdko
Use a opção -U
(ou --upgrade
) para atualizar o afdko (e suas dependências) para a versão estável mais recente:
python -m pip install -U afdko
Para obter versões de pré-lançamento e em desenvolvimento, use o sinalizador --pre
:
python -m pip install -U afdko --pre
Para remover o pacote afdko use o comando:
python -m pip uninstall afdko
Primeiro você deve ter instaladas as ferramentas de desenvolvimento da sua plataforma.
No macOS, instale-os com:
xcode-select --install
No Linux (Ubuntu 17.10 LTS ou posterior), instale-os com:
apt-get -y install python3.9
apt-get -y install python-pip
apt-get -y install python-dev
apt-get -y install uuid-dev
Em outros sistemas operacionais do tipo POSIX, libuuid
e seus arquivos de cabeçalho podem estar em um pacote chamado libuuid-devel
ou util-linux-libs
. O código fonte do libuuid
é mantido no repositório util-linux.
No Windows, você precisa do Visual Studio 2017 ou posterior.
Para construir o afdko a partir do código-fonte, clone o repositório GitHub do afdko, certifique-se de que o módulo wheel
esteja instalado ( python -m pip install wheel
), então cd
para o diretório de nível superior do afdko e execute:
python -m pip install .
Se você quiser desenvolver e depurar AFDKO usando Xcode, execute:
CMake -G Xcode .
Para obter mais informações sobre como construir a partir do código-fonte, consulte docs/FDK_Build_Notes.md.
Observação
Não é possível instalar o afdko no modo editável/desenvolvimento usando python -m pip install -e .
; isso ocorre porque o kit de ferramentas inclui executáveis C binários que setup.py tenta instalar na pasta bin/ (ou Scripts/), no entanto, esse processo foi feito apenas para ser usado com scripts baseados em texto (escritos em Python ou em shell scripting linguagem). Para contornar esse problema (que realmente afeta apenas os poucos desenvolvedores principais do afdko que precisam obter feedback ao vivo à medida que modificam os arquivos de origem), você pode usar métodos alternativos, como exportar um PYTHONPATH, usar um arquivo .pth ou hacks semelhantes. Para mais detalhes leia este comentário.
O AFDKO foi reestruturado para poder ser instalado como um pacote Python. Agora depende do interpretador Python do usuário e não contém mais seu próprio interpretador Python.
Dois programas, IS e checkoutlines, foram descartados porque seu código-fonte não podia ser de código aberto. Essas ferramentas estão disponíveis na versão 2.5.65322 e anteriores.
Observação
Se você instalar o antigo AFDKO, bem como o novo pacote PyPI afdko, as ferramentas da versão mais recente terão precedência sobre as mais antigas. Isso acontece porque o pip adiciona o caminho do pacote do afdko no início da variável de ambiente PATH do sistema, enquanto o instalador antigo o adiciona no final; esta modificação no PATH não é desfeita pelo desinstalador. Se quiser remover completamente o caminho para a versão mais recente, você terá que editar o PATH. No Mac, isso significa editar a linha no seu arquivo de login que define a variável PATH. No Windows, isso significa editar a variável de ambiente PATH no Painel de Controle do sistema.