kordamp / ikonli

Icon packs for Java applications
http://kordamp.org/ikonli/
Apache License 2.0
500 stars 50 forks source link

Not gotting my Custom icon in my button #145

Open salmantln opened 3 years ago

salmantln commented 3 years ago

I followed the docs on https://kordamp.org/ikonli/#_authoring to try and get my custom icon into my button. But when I try it, I get and use CAPTCHA("my-icon-captcha", '\uE001'); i get a checkmark icon: image

I use the site https://fontello.com/ to create my custom icon. image

public enum MyIcon implements Ikon {
    CAPTCHA("my-icon-google_recaptcha-icon", '\uE800');

    public static MyIcon findByDescription(String description) {
        for (MyIcon font : values()) {
            if (font.getDescription().equals(description)) {
                return font;
            }
        }
        throw new IllegalArgumentException("Icon description '" + description + "' is invalid!");
    }

    private String description;
    private int code;

    MyIcon(String description, int code) {
        this.description = description;
        this.code = code;
    }

    @Override
    public String getDescription() {
        return description;
    }

    @Override
    public int getCode() {
        return code;
    }
}

This is what I get when i am trying to use MyIcon: image

how can i make sure that i get my own icon?

aalmiray commented 3 years ago

This could be a problem with the font family name

salmantln commented 3 years ago

Any idea what the font family name should be or how i can get it?

aalmiray commented 3 years ago

The font family should be able to be set using the fontello app. Personally I use use the icomoon to create fonts. There should be a setting that lets you specify a custom font family name. If there isn't then you could switch to icomoon or use a font editor (I use FontForge on OSX) to set the value.

RealThanhpv commented 2 years ago

I tried the font file materialdesign-pack of this lib, with the same family name but still hit the same problem. image

Any helps is highly appreciated.

azurief commented 6 months ago

If it can help some people who faced this problem. In order for the icon to be displayed properly, the CSS file associated to the font file (fontello generates 5) need to be loaded in the scene of your javafx program.

Some adjustments to the CSS might be necessary regarding the url defined in the @font-face block.