Skip to content

简单粗暴,一个初始化函数解决,直接上代码

函数代码:

go
func init() {
	//设置中文字体:解决中文乱码问题
	fontPaths := findfont.List()
	for _, path := range fontPaths {
		if strings.Contains(path, "msyh.ttf") || strings.Contains(path, "simhei.ttf") || strings.Contains(path, "simsun.ttc") || strings.Contains(path, "simkai.ttf") {
			os.Setenv("FYNE_FONT", path)
			break
		}
	}
}

整体代码:

go
package main
 
import (
	"os"
	"strings"
 
	"fyne.io/fyne/v2/app"
	"fyne.io/fyne/v2/widget"
	"github.com/flopp/go-findfont"
)
 
func init() {
	//设置中文字体:解决中文乱码问题
	fontPaths := findfont.List()
	for _, path := range fontPaths {
		if strings.Contains(path, "msyh.ttf") || strings.Contains(path, "simhei.ttf") || strings.Contains(path, "simsun.ttc") || strings.Contains(path, "simkai.ttf") {
			os.Setenv("FYNE_FONT", path)
			break
		}
	}
}
 
func main() {
 
	myApp := app.New()
 
	myWindow := myApp.NewWindow("中文")
	label := widget.NewLabel("汉字")
 
	myWindow.SetContent(label)
 
	myWindow.Show()
	myApp.Run()
}

Released under the MIT License.