System Font or OTF/TTF Support?


Can anyone tell me if the code mentioned in MR613 and subsequently added to by Developer John Young that adds System Font or OTF/TTF Support for EESchema, PCBNew and the PLEditor has been incorporated into a Test or Release Build of KiCAD yet?

The “February Development Highlights” page says you can “now use Comic Sans to your heart’s content!” – I certainly wouldn’t draw a circuit with Comic Sans in it, but I do have some special British Uno Stencil Alphabet Fonts in TTF that work in Word and my Abacom sPlan 8 Drawing Software, and if there’s a KiCAD build that now incorporates TTF/OTF support, that would give me the push to use KiCAD in my own designs!

Is it possible to add the code mentioned in MR613 and followed on by John Young to add TTF/OTF support to KiCAD’s 6.0.5 source code package (if not already incorporated in it) and can anyone give me a summary of, or a link to, what’s needed to complete KiCAD from the Source Code package please?

Chris Williams

I doubt (but could be proven wrong) that it exists in any of the 6.0.x builds because this is a new feature and 6.0.x are only for bug fixes. It may be in the 6.99 development builds, but I don’t use them so I can’t verify.

[edit] Note: I am NOT trying to encourage using the 6.99 builds for anything other than testing new features for bugs.

Welcome to the forum!

FWIW: the name is Jeff Young

It is in 6.99 all right.

Fair enough – is it possible to port the MR613 code and Jeff Young’s extensions to it into the 6.0.5 Source Code Package and rebuild?

I don’t mind a few hours (or even days!) experimental work with the KiCAD source code to see if I can add the facility to use the fonts I desire – after all, that’s the whole methodology behind “open–source” software!

What Modules/files would Jeff’s TTF support code be incorporated in? – do I simply look in EESchema, PCBNew and PLeditor for them, or is the code encrypted or otherwise not obvious?

(I can obviously look in the 6.99 nightly build as a starting–point! Where can I download the 6.99 nightly build source?)

Chris Williams

I’m no KiCad developer, I just test features and do the occasional bug report. Maybe tag one of the gurus (Jeff Young, craftyjon, WhiteChairFromIkea…).

As far as I know this is large, complicated and non-isolated feature, it can’t be expected to be portable to 6.0. If you are willing to use your time and can program, why not just use 6.99 and fix all the bugs which bother you? That way everyone would benefit.

The feature is yet somewhat experimental, mixing it with the stable codebase would defeat the purpose of stable version anyway.

Anyways, if you want to do your private builds, this might be recommended reading:

Can it be done? Sure, if you want to do it yourself, we are never backporting it for the 6.0.x releases we make, ever.
Also it is a lot of refactoring.

And mind you, it’s still “unfinished”, it works, but there are bugs still being fixed.

Also note, your schematic and pcb files will forever be incompatible with everyone else’s 6.0.x install.

1 Like

Last time I looked in 6.99, a number of the fonts listed, didn’t work. As others say, a work in progress.

Fair enough – is it possible to port the MR613 code and Jeff Young’s extensions to it into the 6.0.5 Source Code Package and rebuild?

Theoretically sure, but in practice the hodgepodge result will probably be even more experimental and more untested than just using the nightly 6.99 builds.

So either use the 6.99 builds (not that I recommend that, but might be the only option if you really want to use the feature) or wait until the start of 2023 when the feature will likely become stable.

For the time being I would be only wanting to use the 6.99 Nightly Builds on my own personal PCBs, and I have already verified that JLC can make PCBs with my British Uno Stencil Fonts, I designed one for a vintage Colour TV in “Easy–PC” that does have native TTF/OTF support built–in,
but Easy–PC isn’t as easy to learn or as well documented!

Will the 6.99 nightly builds produce boards that can be sent to JLC without them throwing a wobbly?

Chris Williams

Gerber files are just Gerber files, if you manage to export them using JLC recommended settings and if they look fine, JLC PCB should be able to read them.
I’ve submitted lots of boards created with development versions of KiCAD to JLC and other fab houses without problem.
The much bigger potential problem is that KiCad might crash or misbehave randomly delete some components or whatever.

1 Like