Reply to comment
Engraving with single-line fonts
Engraving text is a nice additional feature for all kind of woodwork or processing of thermoplastics. It is always possible to just use regular True-Type fonts for this (e.g. by importing an SVG model file from [Bad Link]). But these outline fonts cause problems for small engravings, since the graver will probably remove too much material from of inside holes of the text. Thus the outline of the engraving will be ok, but the inner features of the fonts will be barely visible or they just look broken.
The upcoming release of PyCAM v0.4.1 will include support for single-line fonts (also known as stroke-based fonts) to overcome this shortcoming.
The following picture shows a comparison of three font styles:
- a common True-Type font (Courier New)
- a simple single-line font (Courier)
- a complex single-line font (Gothic German Triplex)

The inner features of outline fonts will shrink depending on the width of the graver. This makes outline fonts especially unsuitable for very small engravings.
Single-line font glyphs in contrast are described by just a single line. Complex types are accomplished by using parallel lines (duplex fonts) or even additional inner lines (triplex fonts). The quality of these complex fonts matches the quality of common True-Type fonts. But the variety of available single-line fonts is very limited. You can find an overview of all available fonts in the [Bad Link].
The free CAD software project [Bad Link] developed 35 single-line fonts for their model dimensioing and labels. The QCAD developers defined a simple format specification for these font files. They call it Cam Expert Fonts (CXF). You can find a little bit of documentation [Bad Link] and [Bad Link]. There is [Bad Link] (which is currently offline) to convert True-Type fonts to CXF fonts. This conversion obviously does not fix the inherent problem of True-Type used for engravings – but it can be useful under certain circumstances.
The QCAD fonts (licensed under the GPL) are now part of PyCAM. You can enter text and specify some properties (pitch, skew, line spacing and alignment). The result can be stored as an SVG file or imported directly into PyCAM as a contour model.
The CXF font files are also supported by [Bad Link] in a similar fashion. For now I don’t know of any other programs using them.
Future releases of PyCAM will probably include rendering of True-Type fonts that are not just traced, but rather filled with tool movements. This will also lead to support of the typical graver shape (frustum – a truncated cone) to allow a precise filling of the font contour (instead of centering the tool above the outline).
An alternative to using the single-line fonts could be to import DXF files created by [Bad Link]. The package is included in [Bad Link], thus it should be easily usable for anyone interested in using True-Type fonts for engravings.



Recent comments
4 weeks 3 days ago
8 weeks 9 hours ago
8 weeks 4 days ago
12 weeks 1 day ago
41 weeks 4 hours ago
43 weeks 23 hours ago
43 weeks 3 days ago
43 weeks 4 days ago
44 weeks 6 days ago
1 year 5 weeks ago