All Projects → ayoy → Fontedit

ayoy / Fontedit

Licence: gpl-3.0
A desktop app to import, edit and export fonts as byte arrays for use in embedded systems

Projects that are alternatives of or similar to Fontedit

Awesome Embedded
A curated list of awesome embedded programming.
Stars: ✭ 831 (+231.08%)
Mutual labels:  raspberry-pi, embedded
Spokestack Python
Spokestack is a library that allows a user to easily incorporate a voice interface into any Python application.
Stars: ✭ 103 (-58.96%)
Mutual labels:  raspberry-pi, embedded
Openswiftui
WIP — OpenSwiftUI is an OpenSource implementation of Apple's SwiftUI DSL.
Stars: ✭ 967 (+285.26%)
Mutual labels:  raspberry-pi, embedded
Raylib
A simple and easy-to-use library to enjoy videogames programming
Stars: ✭ 8,169 (+3154.58%)
Mutual labels:  raspberry-pi, embedded
Imguifontstudio
Font Helper Gui Tool for programming
Stars: ✭ 149 (-40.64%)
Mutual labels:  embedded, font
Cfonts
Sexy fonts for the console
Stars: ✭ 789 (+214.34%)
Mutual labels:  generator, font
Debootstick
Generate a bootable live image from any Debian/Ubuntu filesystem tree.
Stars: ✭ 48 (-80.88%)
Mutual labels:  raspberry-pi, embedded
Openvg
Tools for exploring OpenVG
Stars: ✭ 371 (+47.81%)
Mutual labels:  raspberry-pi, font
Lib Python
Blynk IoT library for Python and Micropython
Stars: ✭ 140 (-44.22%)
Mutual labels:  raspberry-pi, embedded
Flutter embedded
Embedded Flutter
Stars: ✭ 123 (-51%)
Mutual labels:  raspberry-pi, embedded
Parse Embedded Sdks
The Embedded SDKs for the Parse Platform
Stars: ✭ 244 (-2.79%)
Mutual labels:  raspberry-pi, embedded
Skiffos
SkiffOS: lightweight & robust cross-compiled Linux distribution optimized for hosting containers.
Stars: ✭ 151 (-39.84%)
Mutual labels:  raspberry-pi, embedded
Guislice
GUIslice drag & drop embedded GUI in C for touchscreen TFT on Arduino, Raspberry Pi, ARM, ESP8266 / ESP32 / M5stack using Adafruit-GFX / TFT_eSPI / UTFT / SDL
Stars: ✭ 534 (+112.75%)
Mutual labels:  raspberry-pi, embedded
Fprime
F' - A flight software and embedded systems framework
Stars: ✭ 8,642 (+3343.03%)
Mutual labels:  raspberry-pi, embedded
Flutter Pi
A light-weight Flutter Engine Embedder for Raspberry Pi that runs without X.
Stars: ✭ 492 (+96.02%)
Mutual labels:  raspberry-pi, embedded
Embedio
A tiny, cross-platform, module based web server for .NET
Stars: ✭ 1,007 (+301.2%)
Mutual labels:  raspberry-pi, embedded
Blynk Library
Blynk library for embedded hardware. Works with Arduino, ESP8266, Raspberry Pi, Intel Edison/Galileo, LinkIt ONE, Particle Core/Photon, Energia, ARM mbed, etc.
Stars: ✭ 3,305 (+1216.73%)
Mutual labels:  raspberry-pi, embedded
Susi linux
Hardware for SUSI AI https://susi.ai
Stars: ✭ 1,527 (+508.37%)
Mutual labels:  raspberry-pi, embedded
Deviceplane
Open source device management for embedded systems and edge computing
Stars: ✭ 917 (+265.34%)
Mutual labels:  raspberry-pi, embedded
Pjon
PJON (Padded Jittering Operative Network) is an experimental, arduino-compatible, multi-master, multi-media network protocol.
Stars: ✭ 2,615 (+941.83%)
Mutual labels:  raspberry-pi, embedded

FontEdit

FontEdit is a desktop application that allows you to convert general-purpose fixed-width desktop fonts to byte array representation that's suitable for use in embedded systems displays.

It's written in C++ with Qt UI and was tested on Windows, Linux and MacOS.

Read more about it in the blog post.

FontEdit

Features

With FontEdit you can:

  • import fonts from the operating system - to load a custom font, you should first register it in your OS,
  • edit individual font glyphs after importing - automatic import is a best-effort operation and although the font should be usable right after importing, you might want to tweak it so that it looks better,
  • add new glyphs to a font document - either by copying an existing glyph, starting from scratch or adding a glyph from a character you input (useful for adding non-ASCII characters to your font),
  • export the font as source code (in a form of byte array) suitable for Arduino, C/C++ or Python,
  • save your progress to a file - the font document file is cross-platform so you can e.g. import and edit it on MacOS and then move to RPi and export the code from there,
  • as of 1.1.0 you can do partial exports, i.e. export only a bunch of font characters that you really need for your application (read more in this blog post).

Font Editor

You can edit font glyphs with a minimal editor that's controlled with a mouse and keyboard. Click and drag the mouse to set pixels (making them black), hold Alt or Ctrl (⌘) to erase. Use touchpad scroll (mouse wheel) with Ctrl (⌘) to zoom the editor canvas.

You can also reset the current glyph or the whole font to their initial state (from latest save). The editor supports Undo/Redo for most operations.

Source Code Export

The font data can be exported to:

  • a C file (also suitable for use with C++),
  • an Arduino-specific C file (using PROGMEM),
  • a Python list or bytes object (both compatible with Python 2.x/3.x and MicroPython).

You can switch between MSB and LSB mode, invert all the bits, and conditionally include line spacings in font definition (not recommended unless you have a very good reason for it). The tab size can be configured.

Getting FontEdit

Packages

The Releases GitHub page contains packages for:

  • Ubuntu/Debian (amd64),
  • Raspbian Buster (armhf),
  • MacOS,
  • Windows.

Building from source

Prerequisites:

  • Qt (tested with >= 5.9)
  • cmake (3.9 or newer)
  • C++ compiler that supports C++17

Follow these steps to build the app from the source code:

  1. Clone the Git repository:

    $ git clone https://github.com/ayoy/fontedit
    $ cd fontedit
    
  2. Check out Git submodules:

    $ git submodule update --init
    
  3. Build with CMake:

    $ mkdir build
    $ cd build
    $ cmake -DCMAKE_BUILD_TYPE=Release ..
    $ make
    
  4. (Optionally) Install on Linux with: make install or create a dmg image on MacOS with make dmg.

Bugs, ideas, improvements

Please report bugs and feature requests via GitHub Issues or as a pull request.

License

© 2020 Dominik Kapusta

This app is distributed in accordance with GPL v3. See LICENSE for details. The app uses icons from www.flaticon.com made by Smashicons, Freepik and Pixel perfect.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].