当我们想要将文本渲染为 vips 图像时,您可以使用vips_text执行以下操作:
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
,但是代码假设这个字体存在,这不是编写机器无关程序的解决方案。所以我想知道是否有更好的方法来做到这一点,以便我们可以将可执行文件与字体文件一起发送。