https://github.com/dheid/fontchooser
This easy to use Java Swing font chooser component allows users to select a font by selecting a font family name and the installed font variants.
https://github.com/dheid/fontchooser
awt desktop gui java-swing multiplatform swing ui
Last synced: 9 months ago
JSON representation
This easy to use Java Swing font chooser component allows users to select a font by selecting a font family name and the installed font variants.
- Host: GitHub
- URL: https://github.com/dheid/fontchooser
- Owner: dheid
- License: lgpl-3.0
- Created: 2022-08-12T05:54:54.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-07-22T12:39:59.000Z (over 1 year ago)
- Last Synced: 2025-06-01T14:42:38.032Z (10 months ago)
- Topics: awt, desktop, gui, java-swing, multiplatform, swing, ui
- Language: Java
- Homepage: https://www.daniel-heid.de/open-source-projekte/
- Size: 1.75 MB
- Stars: 6
- Watchers: 2
- Forks: 3
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README

# :pencil2: Java Swing Font Chooser Dialog and Panel
[](https://search.maven.org/search?q=g:%22org.drjekyll%22%20AND%20a:%22fontchooser%22)
[](https://github.com/dheid/fontchooser/actions/workflows/build.yml)
[](https://ko-fi.com/W7W3EER56)
Java does not provide a lightweight font chooser out of the box. This easy to use Java Swing font chooser component
allows users to select a font by selecting a font family name and the installed font variants. Users are able to search
for a font and insert their own preview text.
* Compact design
* Looks good on every operating system
* Allows to find a font family easily
* Supports font styles
* Shows font in preview
* Allows to change the preview text
* Compatible with Java 8 and upwards
* Easy to use
* Well documented with Javadoc
* No dependencies
There are translations for the following languages:
* English
* German
* Greek
* Hungarian
* Spanish
* Finnish
* French
* Brazilian Portuguese
* Russian
Font Chooser is an open source project and completely free. I appreciate improvements or extensions. Please contact
me if you have questions.
## Screenshots
## :dancers: Cross Platform
")
## :penguin: GTK / Linux
")
## :apple: Aqua / Mac
")
## :office: Windows
")
## :heart: Third party look and feels
")
")
")
")
")
")
")
")
")
")
")
")
")
")
")
")
")
")
")
## :wrench: Usage
Include the following dependency to your project:
```xml
org.drjekyll
fontchooser
3.0.1
```
or Gradle with Groovy DSL:
```groovy
implementation 'org.drjekyll:fontchooser:3.0.1'
```
or Gradle with Kotlin DSL:
```kotlin
implementation("org.drjekyll:fontchooser:3.0.1")
```
If you want to apply a font to a specific component, e.g. a text area, simply use
```java
JTextArea textArea = new JTextArea();
FontDialog.showDialog(textArea);
```
This will display the modal font dialog and apply the font to the component, if the user clicked OK.
Here is another simple example on how to use the font chooser dialog in your application:
```java
FontDialog dialog = new FontDialog((Frame)null,"Font Dialog Example",true);
dialog.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
if(!dialog.isCancelSelected()){
System.out.printf("Selected font is: %s%n",dialog.getSelectedFont());
}
```
You'll find more examples in the module fontchooser-example:
* [DialogExample](examples/DialogExample.java)
* [PanelExample](examples/PanelExample.java)
* [ShowDialogExample](examples/ShowDialogExample.java)
## :hammer: Building
Please use Maven to build and test the project.
mvn install
This will install the version to your local repository. You can now include it:
```xml
org.drjekyll
fontchooser
3.0.2-SNAPSHOT
```
or Gradle with Groovy DSL:
```groovy
implementation 'org.drjekyll:fontchooser:3.0.2-SNAPSHOT'
```
or Gradle with Kotlin DSL:
```kotlin
implementation("org.drjekyll:fontchooser:3.0.2-SNAPSHOT")
```
## :handshake: Contributing and Credits
Please see here: [Contributing](CONTRIBUTING.md)
This is a major rewrite of the JFontChooser component, originally written by Dr Christos Bohoris (Copyright 2009).
## :notebook: Versioning
We use [SemVer](http://semver.org/) for versioning. For the versions available, see
the [tags on this repository](https://github.com/dheid/fontchooser/tags).
## :scroll: License
GNU LESSER GENERAL PUBLIC LICENSE
Version 3, 29 June 2007
https://www.gnu.org/licenses/lgpl-3.0.en.html
## :loudspeaker: Release Notes
### 3.1.0
Includes a check box to show only monospaced fonts
### 3.0.0
This version needs at least Java 11 to run.
### 3.0.1
This version supports [Darklaf](https://github.com/weisJ/darklaf) now.
Styles do not include family name any longer.
### 2.5.1
* Introduced Lombok
* Migrated to JUnit 5
* Updated dependencies and plugins
* Migrated to GitHub