sysfont
1.0.0
Sysfont是一個小包裝,可輕鬆識別已安裝的字體。它對於列出已安裝的字體或基於用戶查詢的字體匹配非常有用。匹配過程還提出了可行的字體替代方案。
該軟件包使用從OS-FONT列表項目中編制的標準字體的集合以及字符串處理和相似性指標來評分字體匹配,以說明部分或不精確輸入查詢。
完整文檔可以在以下網址找到:https://pkg.go.dev/github.com/adrg/sysfont。
go get github.com/adrg/sysfont
finder := sysfont . NewFinder ( nil )
for _ , font := range finder . List () {
fmt . Println ( font . Family , font . Name , font . Filename )
}匹配過程有三個步驟。首先嘗試根據指定的查詢識別最佳匹配的已安裝字體。如果找不到密切匹配,則搜索替代字體。如果找不到其他字體,則返回合適的默認字體。
finder := sysfont . NewFinder ( nil )
terms := [] string {
"AmericanTypewriter" ,
"AmericanTypewriter-Bold" ,
"Andale" ,
"Arial" ,
"Arial Bold" ,
"Arial-BoldItalicMT" ,
"ArialMT" ,
"Baskerville" ,
"Candara" ,
"Corbel" ,
"Gill Sans" ,
"Hoefler Text Bold" ,
"Impact" ,
"Palatino" ,
"Symbol" ,
"Tahoma" ,
"Times" ,
"Times Bold" ,
"Times BoldItalic" ,
"Times Italic Bold" ,
"Times Roman" ,
"Verdana" ,
"Verdana-Italic" ,
"Webdings" ,
"ZapfDingbats" ,
}
for _ , term := range terms {
font := finder . Match ( term )
fmt . Printf ( "%-30s -> %-30s (%s) n " , term , font . Name , font . Filename )
}輸出:
對Ubuntu進行的更全面的測試:
有關更多信息,請參見:
總是歡迎以拉動請求,問題或一般反饋形式的貢獻。
參見貢獻。
版權(C)2019 Adrian-George Bostan。
該項目已根據MIT許可獲得許可。有關更多詳細信息,請參見許可證。