aardio在程序中嵌入特定字体

本文讲的是在用户库中嵌入字体,也就是只有这一个程序可以使用。如果是在标准库中嵌入字体,会更方便,所有aardio开发的程序都可以使用。只需复制字体文件,在aardio IDE中的标准库管理器fonts库上右键粘贴,然后再程序中import fonts.你的字体名,就可以使用了。程序发布时会嵌入到exe中,在其他计算机上也会正常显示。

如果我们在程序中使用了特定字体,客户机上没有安装这个字体,会怎么样?

这时该字体一般会以默认字体进行显示,也就是显示为宋体。

要想让它正常显示,除了把字体文件发送给客户进行安装之外,我们也可以把字体文件嵌入到程序中。

按照arrdio的文档,我们在资源管理器复制字体文件之后,到<工程资源管理器-用户库-字体-fonts>上点击右键粘贴文件,表面上看不到任何变化,实际上在你的<工程目录-lib-fonts>里生成了一个.res文件夹,字体文件被复制到了里面。

这时,在设计视图,我们已经可以使用这个字体了,但是运行时还不能正常显示。

我们在代码中加入这样一句就可以了:

import fonts
var myfont=fonts.addFamily($"\lib\fonts\.res\仓耳雷震汉风体.ttf")

实际上,我们可以把字体文件放在任何一个地方,工程内工程外都可以,只要通过$包含符都可以嵌入进来。我们也可以把字体文件放到资源文件中。由于资源文件是默认内嵌的,所以就不需要再加$包含符。例如:

import fonts
var myfont=fonts.addFamily("\res\仓耳雷震汉风体.ttf")

但是这种不足之处是,在设计时看不到字体效果,只有运行才能看到效果。所以还是推荐上面的写法。

有时候字体名与字体文件名并不完全一致,我们可以通过myfont.name获取字体名,以便在代码中使用。例如:

mainForm.static.setFont(h=-30;name=myfont.name);

总之,还是比较简单的。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值