IconEdit - LVGL Font and Symbol Creator with Text Optimized font

IconEdit is a pixel based font editor, it saves LVGL fonts as C-source files.
IconEdit can convert build-in Windows fonts to bitmap LVGL fonts.
IconEdit has a large included font library, that is included as LVGL fonts.

Multi language fonts:

Convert fonts and images to LVGL C-source code

C-Source format: LVGL B&W and 2,4,8 bpp Alpha level Anti-Alias.

Almost FREE C-Source code requires a license except for small test fonts. Save as BDF, PNG, JPG, BMP, and ICO for free.

Runs on Windows Vista, 7, 8, 8.1, 10 or 11 with 1280x720 or bigger full color screen.

No installation on your PC: Just fetch and unpack the zip file and you are ready to go.

Download the zip file for IconEdit Go to download of the IconEdit zip file.



Convert fonts and images to LVGL C-source code Fonts and Symbols as LVGL C-source code.



Language optimized Fonts.

LVGL C-source code raster fonts with American English, Albanian, and Arabic

Just add languages in the tick boxes, and you are ready to go.

Many Alphabets in a Text Optimized Font More about International Fonts for multiple languages.



Text optimized Fonts.

Simple left to right alphabets with predefined diacritics and ligatures

Dont waste memory space on characters you will never need. Open a text catalog with C-Source text strings, and IconEdit will find all the texts and create a Unicode font with only the characters in the texts. This is essential for Chinese, Korean, and Japanese, where Unicode defines about 80000 characters, and you might only need a few hundreds. But even for short texts with large fonts it can save a lot of memory:

Reduced raster Font in IconEdit

ROM Optimized Fonts ROM Optimized Fonts and Symbols.



Import Fonts from the European Font Library, the Net, or Windows fonts

The European Font Library is included in compressed form the download zip file.
The net has many free font libraries such as Name.bdf, that can be opened directly
The net also has font outlines such as Name.ttf or Name.otf that should be installed in Windows first, and then imported the same way as Windows native fonts.

Import from the European Font Library

This librady contain predefined european fonts in the range from 4x6 to 255x255, the smallest only in B&W, the larger fonts higher than 16 often in 2bpp greytone too.

Smallest LVGL font 4x6:

Included European pre-defined font selection 6

Largest LVGL font 255x255:

Included European pre-defined font selection 255

Import from the Windows Font Library

Use Windows font selection

First select a Windows font, Choose size and options for character look, and use one of the font creation tools such as Language and Region.

Using Windows fonts for greytone fonts smaller than 16 is not recomended, and only some of them have B&W support for fonts smaller than that.

Included European pre-defined fonts The included European Font Library.



Extensive editing facilities for Fonts, Characters, and Symbols

The font edit toolbar:

IconEdit font edit toolbar

The IconEdit font edit toolbar let you operate on the whole font or selected characters.

The character and symbol edit toolbar:

IconEdit character edit toolbar

The IconEdit character and symbol edit toolbar let you draw and modify characters and symbols

Stretch or squeeze characters:

Use Virtual Keyboard to stretch or squeeze text

Create symbol groups such as battery indicators:

Create LVGL font with battery indicators

Convert colored logos to 8bpp greytone:

LVGL logo in color before conversion LVGL logo in 8bpp grey after conversion

Image improvement by use of dither

Just because you only have 4 or even 2 bpp format doesnt mean you cant have pictures:

Original woodpecker in 24 bit-per-pixel color directly from a jpg picture, size 166,500 bytes converted to 2 bit-per-pixel grey with dithering, size 13,875 bytes:

woodpecker 24 bpp rgb woodpecker 2 bpp grey with dither

Graphic drawing and image conversion Graphic drawing, Screen Previews, and Image conversion.



Asian Languages and High Plane Symbols

South Asian alphabets with a high number of diacritics and ligatures

Indian text with combined ligatures

Many Asian languages are defined in Unicode as a combination of a basic character and one or more diacritics, that have to be combined to form a ligature before the text can be displayed correctly.

Convert fonts and images to LVGL C-source code

IconEdit can find these combinations and create a font with with the ligatures ready to use. As part of this process IconEdit also creates a modified text that you can use to display the combined characters directly.

High Plane 32 bit characters in 16 bit LVGL fonts

Indian font with 32 bit symbols

Unicode has support for almost all living languages in the 16 bit Unicode Basic Multilingual Plane 0, but dead languages, symbols, emoji, and rare Chinese ideograms are on the 32 bit Planes 1, 2, 3.

IconIdit can move a large number of these symbols and characters down to the 16 bit Private Area without loosing track of where they came from, and modify your input text to use with the relocated characters:

Indian font with 32 bit symbols moved to 16 bit

This could come in handy before you know it, for Simplified Chinese actually do have idograms on Plane 1 i.e. 32 bit CodePoint.

Asiatic Text Optimized Font Support for Middle Eastern and South Asian fonts.



Arabic Presentation Characters and Right to Left scripts

Arabic Presentation Character Conversion

C string preprocessor for Emoji and Asian textsArabic written left-to-right and displayed right-to-left

Arabic characters change look according to their place in a word, but it is written as a generic set of characters.

It is up to the display system to find the right shape in the Unicode area for Arabic Presentation Characters. The LVGL library can support this by adding #define LV_USE_ARABIC_PERSIAN_CHARS 1. Or IconEdit can help with that by creating new text strings where the generic characters are substituded with the presentation characters, so the new texts can be used directly.

Middle Eastern right to left alphabets

Middle Eastern right to left alphabets with predefined diacritics and ligatures

Many middle Eastern scripts are written from Right to Left, but the Unicode CodePoints are stored Left to Right. The LVGL library can support this by adding #define LV_USE_BIDI 1. Or IconEdit can identify texts with these scripts and generate new modified (usually mirred) texts for use on normal text displays.

Asiatic Text Support The C string pre-processor for Emoji and Asian texts.

IconEdit font and symbol editor home IconEdit font and symbol editor home