Skip to main content

Convert text to custom handwriting

Project description

Tests PyPI version Gitter chat

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) (OUTPUT_DIRECTORY). (You can also type handwrite -h, to see all the arguments you can use).

  3. Your font will be created as OUTPUT_DIRECTORY/OUTPUT_FONT_NAME.ttf. Install the font in your system.

  4. 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 using apt

    sudo apt-get install fontforge
    
  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 .
    
  6. Make sure the tests run:

    python setup.py test
    

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 .
    
  6. Make sure the tests run:

    python setup.py test
    

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

handwrite-0.1.1.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

handwrite-0.1.1-py3-none-any.whl (13.3 kB view details)

Uploaded Python 3

File details

Details for the file handwrite-0.1.1.tar.gz.

File metadata

  • Download URL: handwrite-0.1.1.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.1 CPython/3.8.7

File hashes

Hashes for handwrite-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e3bf4c2da342759f1166381efe2d9a4c70d070e483c74f9050dad3a6caa03324
MD5 93855cc5dd6ce03d9396e0283f12b99a
BLAKE2b-256 45e379ed919f667e1854a9cdfbc9f4b239197c3cb464c899ff0735eb7d78befc

See more details on using hashes here.

File details

Details for the file handwrite-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: handwrite-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 13.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.56.1 CPython/3.8.7

File hashes

Hashes for handwrite-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 80dc79bf836e4c9b896731eda56d81669c00ec89146ea04f42e5500e0c645121
MD5 e49f7859d5fb397e1225ee7601a811ed
BLAKE2b-256 e3e7644dd4075b84ad572714a388b940eeaf05eea6429a72072c5b46b622e9a3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page