WORKPLACE SANS - DEVELOPMENT NOTES
Updated 2019-07-16

This file contains some pointers for people wishing to contribute to the
development of the Workplace Sans fonts.


Even though these are TrueType fonts, I create all the outlines using cubic
(PostScript) splines.  These are automatically converted to quadratic splines
when the TrueType font is generated.  (There's no particular technical
reason for doing it this way; I just happen to find cubic splines easier to
work with when designing.)

All of the fonts use a base UPM of 1024.


DESIGN

Most outside curves in Workplace Sans have straight vertical sides (if length
permits).  From version 1.0, stroke ends are generally cut off at an angle.

The top and bottom curves on characters like 'O', 'e', etc. are given an 
overshoot of between 7-10upm.  

In designing these fonts to closely reflect the existing bitmap glyphs of
WarpSans, I initially imagined each glyph as a conceptual grid (of
approximately 65x67.5 upm), in which each square corresponds to a pixel in
the 9-point (120dpi) version of WarpSans.  I have since moved away from this
model to some extent, although its legacy still lingers here and there.

Main strokes generally adhere to the following widths:
                 Light*        Regular        Bold
Horizontal:      50 upm        70 upm         120 upm
Vertical:        48 upm        65 upm         85 upm

* Note: The Light weight is not currently maintained.

The width of diagonal strokes will depend on the angle of slant, but generally
aim to achieve a consistent appearance with the verticals.


SOFTWARE

I develop all the Workplace fonts using FontLab Studio (version 5):
http://www.fontlab.com/

I use FontForge to create the BDF (bitmap font) files and import them into
the TTF files: http://fontforge.sourceforge.net/


CMAPS

FontLab generates TTF fonts with two cmaps (codepoint-to-glyph mapping tables)
in the font header.  One is always Unicode; I've taken to generating my fonts 
with OS2UGL (the OS/2 Universal Glyph List) as the second cmap.  This probably 
isn't necessary, as the OS/2 TypeType drivers will generally get their mapping 
information in other ways, but it could conceivably be useful in some 
circumstances (at least as a fallback).

The version of OS2UGL I use is based on the "extended" (merged) version included
in all versions of OS/2 since Aurora.  FontLab doesn't include a codepage table
for this version (although it does have them for some of the older, non-merged
versions), so I have provided my own.  Actually, I've provided two (available on
my website):
 - OS2EUGL.CPG is a direct conversion of the OS2UGL-to-Unicode mapping used by
   OS/2, albeit with a couple of errors corrected.  East Asian characters are
   mapped to their canonical ("fullwidth") equivalents.
 - OS2EUGLH.CPG is the same except that instead of mapping East Asian characters
   (Japanese, Korean, and CJK symbols) to the standard "fullwidth" versions,
   they are mapped to the single-byte "halfwidth" versions instead.  Doing this
   effectively simulates the character map used by SBCS OS/2 bitmap fonts.
I can't really recommend one over the other; as noted, in practise the OS2UGL
cmap probably won't be used anyway.

To use these files, copy them into the directory where TypeTool keeps its
codepage definition files (the location varies according to the version).  They
should then be available in the list of codepages shown in "index" mode.


LICENSE

Copyright (c) 2003-2019 Alexander Taylor: http://www.altsan.org/

These fonts are licensed under the SIL Open Font License, Version 1.1; see
the font header (viewable in the VFB file) or the documentation distributed
with each compiled font file for details.
