Should have started this page a few weesk ago, and taken better notes, but gotta start somewhere.
The Gist: got a plotter; had to replace some rollers; tried with varied success to refill some of the pens; it’s awesome; curves are hard; fonts are harder; workflow needs work.
References (in no particular order):
- Comment thread w/ chevycasanova & myself on this instagram post.
- This blog post about truetype fonts, and how some of them are secretly multi-line, even when they claim otherwise. They’re also working in Rhino, so that’s a huge plus.
- There’s a current, commercial HPGL driver called WinLINE for $190.
- A blog post about engraving fonts, with some more info about engraving fonts, as well as some links for single-line fonts, also known as open path fonts.
- Paul Rickards‘ blog
Ah HA! So, the SLF-RHN_Architect is truly an open path font, and here’s how I can tell:
1) using TextObject in Rhino, which lets you type in text but then turns it into polylines instead of editable text, we can see it’s only single lines.
2) using that font in a more traditional application like Word, you can see that it really wants closed outlines to fill. When it doesn’t gets open curves, it does it’s best to fill them in, like this:
And hilarity ensues. Interestingly, this font doesn’t even show up as an option in Inkscape. Odd, since I thought a lot of people used Inkscape to run CNCs and the like, so you’d think it’d have good open path font support. Funny enough, even AutoDesk’s TrueView is exhibiting this behavior when trying to open a DXF with open path trueType fonts.
So I appear to have 2 truly open path fonts, SLD-RHN Architect, and MechSoft_Font-1. Unfortunately both of them have smooth curves, which poses a problem for my plotter. Because the plotter ends up treating curves as a series of small lines, there’s a tiny pause between each change in direction, and that makes for a slower path that leaves a lot more ink on the page.
The two fonts that would appear to work well on the plotter are Simplex & Txt. Both of which are available in AutoCAD as .shx files, but both of who’s .ttf equivalents are not open path.
Right now my workflow originates in Rhino3D. I’ve had access to Rhino for at least the past 10 years through various jobs, and if I ever really need to, I’ll just buy a copy for myself. It’s a thousand bucks for a perpetual license, and it’s fantastic software I’d feel good about plunking down my own hard-earned cash for.
Coming out of Rhino DXF, I’ve got a few options to get it to the plotter.
- AutoCAD: In AutoCAD, I can swap out font styles for plotter-friendly SHX fonts, plus the plotter driver is great. The problem is I’m not sure I’ll always have access to AutoCAD, and it’s expensive AF.
- AutoDesk TrueView: This can just open DXFs and send them to the plotter, but I can’t make any font changes. I’m not 100% sure about it’s support for TrueType open path fonts. That’s on the list of things to check. If it doesn’t support them, I’d have to lay down text in Rhino using the textObject command, which makes polylines from fonts. The downside there is the text is not editable.
- Inkscape: Inkscape has rudimentary HPGL support, and from what I saw, it was ‘good enough’ (maybe). It did not handle open-path fonts out of the box, but someone mentioned there’s a extension to convert fonts to open paths. Its… not going great.. more below.
Adventures in Inkscape
For whatever reason, regardless of regular text or the ‘Hershey’ text (which gets converted to SVG paths), the plotter loses it’s mind after a few characters.
I was also having a problem even getting simple shapes to show up on the right position on the page, but de-selecting ‘auto-align’ in the Plot features page seemed to fix that. Making a simple rectangle on the page seems to yield generally good results in terms of scaling.
I’m also disabling ‘overcut’, ‘offset correction’, and ‘Precut’.
Yeah, I’m getting nowhere with Inkscape. It shits the bed after the first few characters. Maybe I’ll try slowing down the baudrate, but it’s weird that there wasn’t the same problem from AutoCAD.
SOLVED: It was flow control. For whatever reason, in AutoCAD / TrueView, I had to set software flow control (Xon/Xoff), but in Inkscape, I had to enable full hardware flow control (DSR/DTR & RTS/CTS). Thanks Paul Rickards for the tip!
Next thing to work out in Inkscape is curves – they’re printing quite slow, and it looks like it’s because they’re coming in as a series of polylines
This happened because I exported it as Polylines. I tried “Natural” export next but for some reason that ended up obliterating all of the resistor zig-zags ?!?!
A Working Recipe, Take 1:
OK, getting closer:
- Save as DXF from Rhino using the ‘default’ profile (not polyines, not natural, just default. Don’t over-think things, Paul)
- Open in Inkscape, make ‘FifteenTwenty‘ the default font
- Re-align all the text & resize fonts as needed. Dunno why, but it comes in shifted, and not in a predictable way, like you can’t just grab them all and nudge a little.
- Select all text and change the font to ‘FifteenTwenty UltraLight’. At this point the stroke becomes invisible.
- With all text still selected, hit Shift-Control-C to turn the text to paths.
- Give the still selected objects a solid stroke so you can see them again for any last checks.
- Plot it!
Alternatively, I can just use Fifteen Twenty in the TextObject command in Rhino and do all my text aligning there. Maybe that’s the move.
So I found out that the FifteenTwenty font isn’t actually an open path font; it’s has closed loops that trace back over themselves. Keeping it as a font in Inkscape vs converting it to paths makes no difference. Making it paths using the TextObject tool in Rhino should work, but some shapes just don’t import correctly into Inkscape:
And just to prove I’m not crazy, here’s DXF linework from that font-in-progress I was working on opened in a TrueView on top, and Inkscape on the bottom. So Inkscape is just ignoring some polylines ?!
Fortunately, rhino can export SVG, so I think we’ll just go that route.
Trying to make my own font:
I tried to take the Txt font and make it single path. With a lot of manual work, I was able to make a set of numbers and uppercase letters to play around with. They work well with Rhino’s TextObject command, but they do not work well with the regular text command.
There’s something special about SLD-RHN Architect, and MechSoft_Font-1 that makes Rhino render them correctly.
Stewart Russell’s Fifteen Twenty font has a single stroke style which also doesn’t display in Rhino.