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。