Skip to content

[bug] Multiple fonts / Icon fonts broken since migration #711

@Geo5

Description

@Geo5

Hey,
using icon fonts (and also possibly the MultipleFonts example) seems to be broken since the migration to cimgui-go.

Below is the code example, which correctly displays icons on v0.7.0 but does not work on current master:
Fonts_v0 7 0
Fonts_master

The minimal example uses https://github.com/juliettef/IconFontCppHeaders with forkawesome-webfont.ttf

I could not find any changes, which seemed meaningful to me to FontAtlasProcessor.go since v0.7.0, so maybe it has something to do with cimgui-go itself.

Code example

main.go
package main

import (
	iconFonts "github.com/juliettef/IconFontCppHeaders"

	g "github.com/AllenDang/giu"
)

var IconFont = iconFonts.IconsForkAwesome

func Icon(name string) string {
	ret, ok := IconFont.Icons[name]
	if !ok {
		panic(name + " icon not found")
	}
	return ret
}

func loop() {
	g.SingleWindow().Layout(
		g.Label("Content line"),
		g.Label("Content line "+Icon("Check")),
		g.Button("Normal button"),
		g.Button("Normal button"+Icon("Check")),
	)
}

func main() {
	wnd := g.NewMasterWindow("Multiple fonts and icons", 600, 400, g.MasterWindowFlagsNotResizable)
	// Change the default font to include icons
	g.Context.FontAtlas.SetDefaultFont("forkawesome-webfont.ttf", 20)
	wnd.Run(loop)
}

To Reproduce

  1. Run the demo on master
  2. Run the demo on v0.7.0

Version

master

OS

Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions