Many years ago I was hired by a company as their software development manager. It was a fancy title for someone who up until then programmed in Basic and Visual Basic as a hobby. Working by day as a sign maker for the family business it was readily apparent to me that while computers had come a long way, the TRS-80 we were using was less than adequate. We would have to do something called arc’ed text whereby the line of text would curve around a specified radius. While by today’s standards this is child’s play, doing this on the TRS-80 was nothing short of magic. Not to mention that I could set the jobs to calculate and go to lunch and hopefully by the time I returned it would be ready to run. It wasn’t long before I started to long for a PC based computerized engraving system. Our original system was built by a company called Dahlgren. While its system based upon the TRS-80 was state of the art, its newest addition to the industry was a PC based system. Before long we made the purchase. The difference in speed was phenomenal.
More importantly though I could now pick apart the job save files. Working bit by bit and with a little help form somebody in Texas I was able to reverse engineer the entire file format for job saves. With that knowledge in hand I was able to layout signs using Visual Basic. The best use was “drawing” customers Autocad files and having the jobs automatically created for the new engraver. This was a bigger time saver for me and it helped quench my never ending desire to learn more.
You are probably wondering what this has to do with vectorizing fills in True Type fonts. Well my abilities to reverse engineer Dahlgren’s job file save format interested one of their competitors; Xenetech USA, Inc. You see Xenetech had released its own product which we also acquired that was the very first WYSIWIG interface for the engraving industry. Dahlgren had a large customer base and Xenetech needed a way to win Dahlgren’s customers over to their side. While the WYSIWIG interface should have been enough, their customers wanted to be able to open their Dahglren jobs in Xenetech and that’s where I came in.
Once hired by Xenetech I had one issue to overcome; I didn’t know anything about C/C++. The owner of the company simply told me this; All programming languages are the same, the only difference is semantics. He was right. I quickly wrote the code to open Dahlgren Job files. This clearly helpd put many a sales in Xenetech’s pocket and ultimately in my paycheck.
One throwback form the early days was that all fonts had to be hand digitized with a tool cutter path. Much like your CNC machines today you had to draw each and every line and curve of a particular font in order to make it work for the engraver. This was time consuming and if you had to buy the fonts form someone they were expensive. At the time all engraving systems used these types of fonts and Xenetech was no exception.
One of my pet projects was writing code to digitize bit-mapped images thus creating vectorized images. I had worked it in my mind hundreds of times and while I had working code it was soon to be more important to the company. It turns out that True Type fonts were becoming more popular with pc based applications. In the sign world CorelDRAW was new on the scene. I recall installing a run-time version of windows 3.0 that came with version 1.0 of Corel, from 5.25 floppies… yea I am that old.
The thought came to me that since True Type fonts are in fact vector outlines then why can’t I write code to fill them with vector lines. It took many hours but I had finally crafted a working prototype. Now True Type fonts could be used by the engraving systems, no longer confining sign makers to a small selection of custom fonts. While it took many more hours to fine tune the code adding options such as tool size and edge padding Xenetech finally had the ability to add True Type fonts into their sign making software, yet again putting them on top.
Today I still get requests from sign shops asking me to write the code for CorelDRAW. While it may be mostly a simple port, I am still waiting for CorelDRAW to get with the program and do it themselves.

