In my last post I mentioned a set of macros that I wrote this week to help in tweeking Doublewide. I thought I'd throw the code out there, just in case someone else finds it useful.
The idea is pretty simple. Wouldn't it be nice to move a node while keeping the tension in the curve? When tweeking, bolding and making fonts wider, I prefer to use the keyboard to 'nudge' the points around. It makes it easy to keep track of measurements, to make sure that the new stroke weight/character widths are consistent.
For example, if I have a light weight with a 70 unit stem weight, and I want to make the new stem weight 270, all I have to do is command+shift+right+arrow on each of the stems. Unfortunately, this flattens the curves, as the off curve control points stay in the same place.
The answer: Interpolated Nudge. The macros simply move the control points proportionally with the anchor points. If you move an anchor 10 units to the right, and the control point is 50 percent of the distance to the next anchor, the control point will move 5 units, preserving the tension in the curve. The algorithm is super simple, but it helps.
The next trick is to map the macros to keys. Fontlab allows macros to be assigned to 0-9+shift+option. I mapped NudgeLeft10 to 4, right to 6, up to 8 and down to 5. This way I can use the number pad like directional keys. I also mapped NudgeRight100 t0 3 and NudgeLeft100 to 1, so I can move big distances more quickly.
Of course my preference would be for nudge to be worked into Fontlab's interpolation tool, but in the mean time, this is a quick and easy way to make extended and bold versions of fonts.
- Download the attachment from this post. Copy the "InterpolatedNudge" folder into the FontLab Macros directory.
- Copy "InterpolatePoint.py" into the Macros/system/modules/ folder. (On a mac the macro directory is found at ~/Library/Application Support/Fontlab/Studio 5/Macros/).
- Press the "reload" button on the Fontlab macro toolbar. You should see InterpolatedNudge show up as a folder in the macro toolbar.
- To map the keys, select each macro (eg NudgeLeft10) and then use the "assign to keyboard" drop down menu on the right of the macro toolbar.