AFDKO 是一组用于从 PostScript 和 TrueType 字体数据构建 OpenType 字体文件的工具。
该存储库包含数据文件、Python 脚本以及构成 AFDKO 的命令行程序的源代码。该项目使用 Apache 2.0 开源许可证。请注意,AFDKO 使用requirements.txt 文件中列出的多个依赖项,如果您使用pip
安装 AFDKO,这些依赖项将自动安装。大多数依赖项都是 BSD 或 MIT 许可证, tqdm
除外,它是 MPL 2.0。
请参阅 AFDKO 概述,了解软件包中所含内容的更详细说明。
请参阅 wiki 了解更多信息,例如参考材料和相关项目的链接。
psautohint 的 Python 端口作为“otfautohint”(重新)集成到 AFDKO 存储库中
更多信息可以在 docs/otfautohint_Notes.md 中找到
AFDKO 需要 Python 3.9 或更高版本。它应该适用于任何高于 3.9 的 Python,但有时工具链组件和依赖项无法与主要 Python 版本保持同步,因此在赶上时可能会有一些滞后时间。
版本可在 Python 包索引 (PyPI) 上找到,并且可以使用 pip 安装。
macOS 用户注意:我们建议您不要使用系统 Python。除其他原因外,某些版本的 macOS 附带了 Python 2,而最新版本的 AFDKO 仅适用于 Python 3。您可以在此处找到有关使用 Brew 在 macOS 上安装 Python 3 的说明:在 Mac OS X 上安装 Python 3。 :pyenv 是一个在 macOS 上安装和管理多个 Python 版本的好工具。
所有用户请注意:我们强烈建议使用 Python 虚拟环境 ( venv
) 并使用python -m pip install <package>
来安装所有包(不仅仅是 AFDKO)。直接调用pip install
可能会导致调用错误的pip
,并且包登陆到错误的位置。使用venv
+ python -m pip install
的组合有助于确保 pip 管理的包放置在正确的位置。
Linux 用户(以及 macOS 或 Windows 以外的其他平台的用户)请注意:当您的平台没有预先构建的“轮子”时, pip
将尝试从源代码构建包的 C 和 C++ 部分。仅当安装了 C 和 C++ 开发工具以及 libuuid 时,此过程才会成功。请参阅下面的从源代码构建。
选项 1(推荐)
创建虚拟环境:
python -m venv afdko_env
激活虚拟环境:
macOS 和 Linux
source afdko_env/bin/activate
视窗
afdko_env S cripts a ctivate.bat
安装afdko:
python -m pip install afdko
在虚拟环境中安装afdko可防止其依赖项与全局安装的其他模块之间发生冲突。
选项 2(不推荐,除非存在全局冲突)
本地用户安装afdko(信息):
python -m pip install --user afdko
使用-U
(或--upgrade
)选项将 afdko (及其依赖项)更新到最新的稳定版本:
python -m pip install -U afdko
要获取预发布版本和开发中版本,请使用--pre
标志:
python -m pip install -U afdko --pre
要删除 afdko 软件包,请使用以下命令:
python -m pip uninstall afdko
首先,您必须安装适合您平台的开发工具。
在 macOS 上,使用以下命令安装它们:
xcode-select --install
在 Linux(Ubuntu 17.10 LTS 或更高版本)上,使用以下命令安装它们:
apt-get -y install python3.9
apt-get -y install python-pip
apt-get -y install python-dev
apt-get -y install uuid-dev
在其他类似 POSIX 的操作系统上, libuuid
及其头文件可能位于名为libuuid-devel
或util-linux-libs
的包中。 libuuid
的源代码维护在 util-linux 存储库中。
在 Windows 上,您需要 Visual Studio 2017 或更高版本。
要从源代码构建afdko ,请克隆 afdko GitHub 存储库,确保安装了wheel
模块( python -m pip install wheel
),然后cd
到 afdko 的顶级目录,并运行:
python -m pip install .
如果您想使用 Xcode 开发和调试 AFDKO,请运行:
CMake -G Xcode .
有关从源代码构建的更多信息,请参阅 docs/FDK_Build_Notes.md。
笔记
无法使用python -m pip install -e .
;这是因为该工具包包含 setup.py 尝试安装在 bin/(或 Scripts/)文件夹中的二进制 C 可执行文件,但是此过程仅适用于基于文本的脚本(用 Python 或 shell 脚本编写)语言)。要解决这个问题(这实际上只会影响少数核心 afdko 开发人员,他们在修改源文件时需要获得实时反馈),您可以使用替代方法,例如导出 PYTHONPATH、使用 .pth 文件或类似的 hack。有关更多详细信息,请阅读此评论。
AFDKO 已经过重组,因此可以作为 Python 包安装。它现在依赖于用户的Python解释器,并且不再包含自己的Python解释器。
IS和checkoutlines这两个程序因源代码无法开源而被放弃。这些工具在 2.5.65322 及更早版本中可用。
笔记
如果您安装旧版 AFDKO 以及新版 PyPI afdko 软件包,则新版本中的工具将优先于旧版本。发生这种情况是因为 pip 将 afdko 的包路径添加到系统 PATH 环境变量的开头,而旧安装程序将其添加在末尾;卸载程序不会撤消对 PATH 的此修改。如果您想完全删除新版本的路径,则必须编辑 PATH。在 Mac 上,这意味着编辑登录文件中设置 PATH 变量的行。在 Windows 上,这意味着在系统的控制面板中编辑 PATH 环境变量。