Fyne设置中文,解决中文乱码

Fyne默认不支持中文

 

 

 

解决:
先安装go-findfont 地址https://github.com/flopp/go-findfont.git,控制台执行

go get -u github.com/flopp/go-findfont

粘贴这段代码

func init() {
   fontPath, err := findfont.Find("SIMYOU.TTF")
   if err != nil {
      panic(err)
   }
   fmt.Printf("Found 'arial.ttf' in '%s'\n", fontPath)

   // load the font with the freetype library
   // 原作者使用的ioutil.ReadFile已经弃用
   fontData, err := os.ReadFile(fontPath)
   if err != nil {
      panic(err)
   }
   _, err = truetype.Parse(fontData)
   if err != nil {
      panic(err)
   }
   os.Setenv("FYNE_FONT", fontPath)
}

到项目根目录下新建一个文件夹用来存放字体文件

 

 Windows电脑搜索C:\Windows\Fonts

 

 

找到喜欢的字体复制粘贴到新建的文件夹
替换"喜欢的字体"为文件名

测试
func main() {
    // use the font...
    MyApp := app.New()
    c := MyApp.NewWindow("fyne支持中文")
    labels := widget.NewLabel("中文看看行不行")
    c.SetContent(labels)
    c.Resize(fyne.NewSize(600, 600))
    c.ShowAndRun()
}

结果

 

posted @ 2022-10-31 01:00  VCCICCV  阅读(4691)  评论(1编辑  收藏  举报