# Font chooser

**URL:** <https://forum.inductiveautomation.com/t/font-chooser/2526>\
**Category:** Ignition\
**Created:** [January 18, 2011, 9:48pm UTC](https://forum.inductiveautomation.com/t/font-chooser/2526 "2011-01-18T21:48:42Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![MCC](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@MCC](https://forum.inductiveautomation.com/u/MCC)\
**Post date:** [January 18, 2011, 9:48pm UTC](https://forum.inductiveautomation.com/t/font-chooser/2526/1 "2011-01-18T21:48:42Z")

</div>

Hi,

I was wondering if there is a way to launch a font selection dialog so a user can select a font that will be used for a display. Something that would work like system.gui.choosecolor does for color selection.

Thanks.

---

<div class="post-metadata">

**Author:** ![MCC](https://avatars.discourse-cdn.com/v4/letter/m/3e96dc/32.png) [@MCC](https://forum.inductiveautomation.com/u/MCC)\
**Post date:** [January 19, 2011, 12:33am UTC](https://forum.inductiveautomation.com/t/font-chooser/2526/2 "2011-01-19T00:33:22Z")

</div>

In parallel to the font chooser question, is there any way to change the mapping of the Java logical fonts (e.g., dialog, monospaced, etc.) from within the Vision module?

---

<div class="post-metadata">

**Author:** ![Carl.Gould](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/carl.gould/32/7262_2.png) [@Carl.Gould](https://forum.inductiveautomation.com/u/Carl.Gould)\
**Post date:** [January 19, 2011, 8:09pm UTC](https://forum.inductiveautomation.com/t/font-chooser/2526/3 "2011-01-19T20:09:12Z")

</div>

I’ll see what we can do for a font selector. You should be able to pretty easily do this yourself though. Heres a way to get a list of all the fonts installed on a system, turn them into a dataset, and populate a dropdown with that dataset.

[code]dropdown = event.source.parent.getComponent(“Dropdown”)

from java.awt import GraphicsEnvironment  
env = GraphicsEnvironment.getLocalGraphicsEnvironment()  
fonts = env.getAvailableFontFamilyNames()

headers = [‘Font Name’]  
rows = []  
for font in fonts:  
rows.append([font])

dropdown.data = system.dataset.toDataSet(headers, rows)[/code]

From there you can simple create a new java.awt.Font. Let us know if you go this route and get stuck.

As far as re-mapping the logical fonts: sorry, no. I think this is done by the JVM when starting up and is inaccessible to us.
