Skip to main content

Tools for making OpenType-SVG fonts

Project description

PyPI Status Codecov

Tools for making OpenType-SVG fonts

  • addsvg adds an SVG table to a font, using SVG files provided. The font's format can be either OpenType or TrueType.

  • dumpsvg saves the contents of a font's SVG table as individual SVG files. The font's format can be either OpenType, TrueType, WOFF, or WOFF2.

  • fonts2svg generates a set of SVG glyph files from one or more fonts and hex colors for each of them. The fonts' format can be either OpenType, TrueType, WOFF, or WOFF2.

Dependencies

  • Python 3.6 or higher

  • FontTools 3.1.0 or higher

Installation instructions

  • Make sure you have Python 3.6 (or higher) installed.

  • Setup a virtual environment:

      $ python3 -m venv ot-svg
    
  • Activate the environment:

      $ source ot-svg/bin/activate
    
  • Update pip:

      $ pip install -U pip
    
  • Install opentypesvg:

      $ pip install opentypesvg
    

How to make OpenType-SVG fonts?

Step 1

Generate a set of SVG files from a series of fonts and color values.

step1

fonts2svg -c 99ccff,ff0066,cc0066 fonts/Zebrawood-Shadow.otf fonts/Zebrawood-Fill.otf fonts/Zebrawood-Dots.otf

Step 2

Add a set of SVG files to an existing OpenType (or TrueType) font.

step2

addsvg -s fonts/SVGs fonts/Zebrawood.otf

You can use Step 2 without doing Step 1, but there are a few things you need to be aware of when using the addsvg tool:

  • After the SVG files are saved with the authoring application (e.g. Adobe Illustrator, CorelDRAW!, Inkscape) they should be put thru a process that optimizes and cleans up the SVG code; this will slim down the file size while keeping the resulting artwork the same. For this step you can use one of these tools:

  • The tool requires the SVG files to be named according to the glyphs which they are meant to be associated with. For example, if the glyph in the font is named ampersand, the SVG file needs to be named ampersand.svg.

  • The tool expects the color artwork to have been designed at the same size as the glyphs in the font, usually 1000 or 2048 UPM. This means 1 point (pt) in the authoring app equals 1 unit in font coordinates.

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

opentypesvg-1.1.2.tar.gz (143.6 kB view details)

Uploaded Source

Built Distribution

opentypesvg-1.1.2-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file opentypesvg-1.1.2.tar.gz.

File metadata

  • Download URL: opentypesvg-1.1.2.tar.gz
  • Upload date:
  • Size: 143.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for opentypesvg-1.1.2.tar.gz
Algorithm Hash digest
SHA256 78d8207d0f9e7bfb653280819d370b7d3c19642e6d4254e65ec379abbc58c962
MD5 07d89e46f25d308906f005932652643b
BLAKE2b-256 f364be0b44d76add7c330da6a391facd4d581c66a1372948ee58ef23c197e9c2

See more details on using hashes here.

File details

Details for the file opentypesvg-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: opentypesvg-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 13.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.9.4

File hashes

Hashes for opentypesvg-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 6ae9956bc4906320deb83bc26c68e5fa272cfeba2c324ebfc8437fa95b44a9da
MD5 44c5695e73231b21131e984448f01d26
BLAKE2b-256 a19daac87ed443b5f3476a9b6f577f4e4b81716cf55048d13f509b1cc584d5e8

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