chws_tool
v1.4.2
当缺少这些功能时,该工具将Opentype chws , vchw , halt和vhal功能添加到Opentype/Truetype字体中。有关这些功能的详细信息,请参阅东亚洲间距。
该工具将东亚洲间距软件包用作其核心引擎,并且具有以下优点:
要将新字体添加到受支持的字体列表中,请参阅下面的添加字体部分。
pip install chws-tool如果您想在开发软件包中克隆并以可编辑模式安装:
git clone https://github.com/googlefonts/chws_tool.git
cd chws_tool
pip install -e ' .[dev] ' 以下示例将功能添加到input.otf中,并将其保存到build目录中。如果参数是目录,则该工具将其递归地将其扩展到目录中的所有字体。
add-chws input.otf使用-o选项更改输出目录或 - 完整选项列表的--help选项。
add-chws input_dir -o output_dir如果功能适用,则以下示例会创建字体,并具有“ build ”目录中的功能:
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" )如果您希望覆盖现有字体,则可以省略输出目录。
import chws_tool
def main ():
chws_tool . add_chws ( "fonts/input.otf" )如果您的程序使用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 ())该软件包在其配置中具有内置支持字体的内置列表。
未在已知列表中的字体仍使用默认配置处理,但此软件包显示了警告消息。
在已知字体列表中添加新字体时,建议使用以下过程:
--print-name选项运行add-chws可以打印它们。此过程的主要目的是发现kernings造成的太紧的间距或字形碰撞。
该工具具有启发式规则,可以使用字形指标来确定间距的适用性,但假设全宽标点字形具有根据语言#50或Clreq中的语言惯例具有足够的内部间距。不幸的是,并非所有字体都遵循大会。
进行视觉测试:
tests/test.html的顶部<script>块中的字体列表中。这是检查清单和提示:
测试中的其他控件不是强制性的,但在以下情况下可能很有用。
请参阅https://googlefonts.github.io/python#make-a-release。