Font Creator for jMP

Hey monkeys,



to create fonts for your jME3 applications and NiftyGUI interfaces I now added a font creator to jMP. Just select a project and press “New File”, then select “GUI” → “Font”, you will be presented with a list of all fonts installed on your computer:

http://imgur.com/XHnGn.png



After selecting a font you can configure the bitmap and font size to fit the font to the image:

http://imgur.com/oWyns.png



When pressing “Finish” a PNG and FNT file will be created in the Interface/Fonts/ assets directory, you can use the font e.g. in NiftyGUI by specifying e.g. font=“Interface/Fonts/Arial.fnt” in a nifty text tag.



Available in the nightly update center, you have to install the plugin manually.



Work in progress, please tell me about any problems you encounter. I also don’t know what all of the parameters in the fnt file really do, if you see errors or problems, please give me a note.



Cheers,

Normen

15 Likes

Hi normen,



thx a lot for that tool. Very useful!!! Will test that later :slight_smile:

WOW!!! Thank you!!! Awsome!

will check and report. :smiley:



any future plan about adding features like color, gradient, outline, shadow like “Hiero”? :slight_smile:

1 Like
iamcreasy said:
any future plan about adding features like color, gradient, outline, shadow like "Hiero"? :)

Should be easy, just look at the code, post the patch files in the contribution forum :P Color is variable through text support in jme.
1 Like

Selection of the basic font styles (plain, italic, bold) has been added (will only be available in the next nightly though).

P.S. Creasy, I saw your post :stuck_out_tongue: Its really easy jMP code, if you want to take a whack at it, theres docs on how to build the sdk and change stuff in the wiki.

hehe :smiley:



okey, i will give it a shot.

@normen what is the significance of changing the Image size?

You have more pixels :stuck_out_tongue: Basically the same as using a 1024 or a 2048 texture… More mem usage and sharper display.

Hi, normen.

I was create font with Cyirilic symbols, load them:

[java]String text = "TEST test ТЕСТ тест …\u0422\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 …";

BitmapFont myFont = assetManager.loadFont("Interface/Fonts/CyrillicRibbon.fnt");

BitmapText hudText = new BitmapText(myFont, false);

hudText.setSize(myFont.getCharSet().getRenderedSize()); // font size

hudText.setText(text); // the text

hudText.setLocalTranslation(200, hudText.getLineHeight(), 0); // position

guiNode.attachChild(hudText);

[/java]

All Cyrillic symbols was not shown.

(Ubutu 10.10)

Well you see what symbols it exports when you create the file, its just the 255 ascii chars for now.

Yes, i was seen them. (It was one font, when I see cyrillic simbols, other font was show square box).

This is a great tool!



If I have some time, I may take a look at the source code. But in the meanwhile, here are my thoughts about features and tweaks :


  • calculate image size automatically (or replace image size by a bpp combo box) for optimal size.
  • optionally let the user enter the desired characters in a text field (use default character set, or a custom one)
  • add a charset encoding drop-down list to select the encoding to use when generating the font
  • add a final step : Set font name
@yanick said:
- add a final step : Set font name

You can change the name in the last panel of the wizard (top right of the form).
  1. doesn’t really make sense, there is no “ideal” image size. That parameter is left in deliberately.
  2. the character sets are defined as per the normal definitions, atm only ASCII is supported. support for UTF-8 etc. can and will be added at some point but not for random chatacter combinations
  3. see 2)
  4. see @nehon’s answer

How do I add new fonts? Is it using the fonts installed on my system?



Thanks!

yes it does, at least on Windows afaik

@nehon said:
yes it does, at least on Windows afaik

It is using system fonts in OSX aswell.
@kwando said:
It is using system fonts in OSX aswell.

I don't have the slight idea, but considering Normen did the font creator, I bet it does ;)

Ahh, it was not a question. It was just a confirmation that it does use the system fonts on OS X (using a mac myself and I’m happy to to be in the same “team” as Normen :P)