All Projects → cod-ed → Handwrite

cod-ed / Handwrite

Licence: mit
Handwrite generates a custom font based on your handwriting sample.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Handwrite

Fnt
apt for fonts, the missing font manager for macOS/linux
Stars: ✭ 187 (+28.97%)
Mutual labels:  cli, typography, fonts
typefaces
Collection of Google fonts as typeface data for usage with three.js, react-three-fiber, and other tools.
Stars: ✭ 53 (-63.45%)
Mutual labels:  fonts, typography
Tehreer-Cocoa
Standalone text engine for iOS
Stars: ✭ 31 (-78.62%)
Mutual labels:  fonts, typography
Tourney
3 axes/variable/no curves
Stars: ✭ 20 (-86.21%)
Mutual labels:  fonts, typography
fdiff
An OpenType table diff tool for fonts. Based on the fontTools TTX format.
Stars: ✭ 33 (-77.24%)
Mutual labels:  fonts, typography
Trispace
2 axes/variable/mostly monospace
Stars: ✭ 49 (-66.21%)
Mutual labels:  fonts, typography
handwrite
Handwrite generates a custom font based on your handwriting sample.
Stars: ✭ 235 (+62.07%)
Mutual labels:  fonts, typography
Dev Fonts
List of fonts for coding
Stars: ✭ 758 (+422.76%)
Mutual labels:  typography, fonts
Fontpreview
Highly customizable and minimal font previewer written in bash
Stars: ✭ 661 (+355.86%)
Mutual labels:  cli, fonts
Juliamono
repository for JuliaMono, a monospaced font with reasonable Unicode support.
Stars: ✭ 625 (+331.03%)
Mutual labels:  typography, fonts
Urbanist
Urbanist is a low-contrast, geometric sans-serif inspired by Modernist design and typography.
Stars: ✭ 374 (+157.93%)
Mutual labels:  fonts, typography
Linearicons
Linearicons is the highest quality set of line icons, matching with minimalist UI designs in iOS.
Stars: ✭ 64 (-55.86%)
Mutual labels:  typography, fonts
Tehreer-Android
Standalone text engine for Android aimed to be free from platform limitations
Stars: ✭ 61 (-57.93%)
Mutual labels:  fonts, typography
Anybody
3 axes/variable/sans/super compressed to super extended
Stars: ✭ 73 (-49.66%)
Mutual labels:  fonts, typography
Sprat-type
Display typeface
Stars: ✭ 58 (-60%)
Mutual labels:  fonts, typography
baseline
New method for creating leading on the web
Stars: ✭ 31 (-78.62%)
Mutual labels:  fonts, typography
Harfbuzz
HarfBuzz text shaping engine
Stars: ✭ 2,206 (+1421.38%)
Mutual labels:  typography, fonts
Webfont
Awesome generator of webfont
Stars: ✭ 170 (+17.24%)
Mutual labels:  cli, fonts
Osfcc
一个收集可用于中文字体排印的开源字体集合。
Stars: ✭ 314 (+116.55%)
Mutual labels:  typography, fonts
Awesome Typography
✏︎ Curated list about digital typography 🔥
Stars: ✭ 947 (+553.1%)
Mutual labels:  typography, fonts

Tests PyPI version Gitter chat License: MIT Code style: black

Handwrite - Type in your Handwriting!

Ever had those long-winded assignments, that the teacher always wants handwritten? Is your written work messy, cos you think faster than you can write? Now, you can finish them with the ease of typing in your own font!

Handwrite makes typing written assignments efficient, convenient and authentic.

Handwrite generates a custom font based on your handwriting sample, which can easily be used in text editors and word processors like Microsoft Word & Libre Office Word!

Handwrite is also helpful for those with dysgraphia.

Installing

  1. Install fontforge

  2. Install Potrace

  3. Install handwrite:

    pip install handwrite
    

Usage

Creating your Handwritten Sample

  1. Take a printout of the sample form.

  2. Fill the form using the image below as a reference.

  3. Scan the filled form using a scanner, or Adobe Scan in your phone.

  4. Save the .jpg image in your system.

Your form should look like this:

Creating your font

  1. Make sure you have installed handwrite, potrace & fontforge.

  2. In a terminal type handwrite [PATH TO IMAGE or DIRECTORY WITH IMAGES] [OUTPUT DIRECTORY]. (You can also type handwrite -h, to see all the arguments you can use).

  3. (Optional) Config file containing custom options for your font can also be passed using the --config [CONFIG FILE] or --config [DIRECTORY WITH CONFIG FILES] argument.

    Note:
    • If passing a directory, make sure to rename the config files to the corresponding sheet names.
    • If a single config file is passed for multiple inputs, that config will be used for all the inputs.
    • If no config file is provided for an input then the default config file is used.
  4. Your font will be created as OUTPUT DIRECTORY/OUTPUT FONT NAME.ttf. Install the font in your system.

  5. Select your font in your word processor and get to work!

Here's the end result!

Development

Linux

  1. Install Potrace using apt

    sudo apt-get install potrace
    
  2. Install fontforge

    sudo apt-get install fontforge
    

    Since the PPA for fontforge is no longer maintained, apt might not work for some users. The preferred way to install is using the AppImage from: https://fontforge.org/en-US/downloads/

  3. Clone the repository or your fork

    git clone https://github.com/cod-ed/handwrite
    
  4. (Optional) Make a virtual environment and activate it

    python -m venv .venv
    source .venv/bin/activate
    
  5. In the project directory run:

    pip install -e .[dev]
    
  6. Make sure the tests run:

    python setup.py test
    
  7. Install pre-commit hooks before contributing:

    pre-commit install
    

You are ready to go!

Windows

  1. Install Potrace and make sure it's in your PATH.

  2. Install fontforge and make sure scripting is enabled.

  3. Clone the repository or your fork

    git clone https://github.com/cod-ed/handwrite
    
  4. (Optional) Make a virtual environment and activate it

    python -m venv .venv
    .venv\Scripts\activate
    
  5. In the project directory run:

    pip install -e .[dev]
    
  6. Make sure the tests run:

    python setup.py test
    
  7. Install pre-commit hooks before contributing:

    pre-commit install
    

You are ready to go!

Credits and Reference

  1. Potrace algorithm and package has been immensely helpful.

  2. Fontforge for packaging and adjusting font parameters.

  3. Sacha Chua's project proved to be a great reference for fontforge python.

  4. All credit for svgtottf converter goes to this project by pteromys. We made a quite a lot of modifications of our own, but the base script idea was derived from here.

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].