【Go语言】Fyne 解决 无法支持中文字体解决方法 (两种方式)

本文介绍了两种在Go语言使用Fyne框架时解决无法支持中文字体的方法。第一种方法涉及安装cmd工具,将字体打包成二进制,修改bundle.go和创建theme.go。第二种方法是在项目中创建theme目录,存放ttf字体文件,并在theme.go中进行配置。在main.go中引入并编译后即可显示。
摘要由CSDN通过智能技术生成

第一种方式

1.安装官方的 cmd 工具

go get fyne.io/fyne/cmd/fyne

2.准备好字体文件(建议使用 ttf 字体格式)

字体文件下载地址 https://www.fonts.net.cn/

3.使用fyne把字体文件打包成二进制格式

fyne bundle fonts.ttf >> bundle.go

在这里插入图片描述

4.需要创建一个 theme 目录 把 bundle.go 放入其中
在这里插入图片描述
5.修改 bundle.go 文件 把 package 和 import 修改成指定格式后保存 见下图:
在这里插入图片描述
6.在 theme 文件夹新建 theme.go 文件 并添加以下代码

package theme

import (
	"fyne.io/fyne/v2"
	"fyne.io/fyne/v2/theme"
	"image/color"
)


type MyTheme struct{
   }

var _ fyne.Theme = (*MyTheme)(nil)

// resourceNotoSansSCTtf 对应的是 bundle.go 中的变量名
func (m MyTheme) Font(fyne.TextStyle) fyne.Resource {
   
	return resourceNotoSansSCTtf
}

func (*MyTheme) Color(n fyne.ThemeColorName
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值