0
當我們想呈現的文本圖像的貴賓,你做這樣的事情與vips_text:Golang vips:如何使用自定義truetype字體呈現文本?
import "C"
var textImage *C.VipsImage
cText := C.CString("Some text")
cFont := C.CString("Arial 12px")
C.cgo_vips_text(&textImage, cText, cFont)
但在這裏,Arial 12px
是fontconfig的字符串名稱,並假定該系統具有此字體安裝。
如何讓程序使用自定義truetype字體文件,例如Roboto.ttf
?
試圖
cFont := C.CString("Roboto.ttf")
可能不會工作。
我們可以把Roboto.ttf
文件放在系統目錄下,例如在Ubuntu中你把這個文件放在/usr/share/fonts/truetype
,但是代碼假設這個字體存在,這不是寫出與機器無關的程序的解決方案。所以我想知道是否有更好的方法來做到這一點,以便我們可以將可執行文件與字體文件一起發送。
感謝您指出env變量。我發現這個鏈接:http://superuser.com/questions/365847/where-should-the-xdg-config-home-variable-be-defined。所以默認的'XDG_CONFIG_HOME'值是'$ HOME/.config',這就是我應該放置ttf文件的地方。 –