Mail Archives: geda-user/2012/05/21/16:54:28
On Sun, 20 May 2012 12:58:09 -0400
Gus Fantanas <fantanas AT innocent DOT com> wrote:
> On 05/20/2012 11:57 AM, Edward Comer wrote:
> > Curious about alternative fonts in PCB, I looked at the
> > default_font (and apparently only font) in PCB. It is located
> > (in my installation) at /usr/share/pcb/default_font
> >
> > The font is composed of line drawing commands. For example, the
> > letter "A" is:
> >
> > Symbol('A' 12)
> > (
> > SymbolLine(0 5 0 40 8)
> > SymbolLine(0 5 5 0 8)
> > SymbolLine(5 0 20 0 8)
> > SymbolLine(20 0 25 5 8)
> > SymbolLine(25 5 25 40 8)
> > SymbolLine(0 20 25 20 8)
> > )
> >
> > Do any other fonts exist? If so, where are they and how to you
> > install/name them in, I assume the same directory as the
> > default_font file.
> >
> --Wouldn't using a program such as Inkscape to create more
> æsthetically-pleasing text and graphics and then importing them
> to PCB be a good solution for you?
I do this occasionally, and YES it does produce a much more
readable and beautiful result on the PCB. Real fonts seem to scale
much more gracefully and produce more readable text at smallish
sizes than the default pcb font.
----- PROBLEMS -----
However, it is very painful to maintain such text on the PCB
(imported into the pcb program from a vector graphics file):
(1) If you want to move it, you must manually select all the
polygons composing the text, you can't just click and drag the
entire thing to reposition it. This is really painful when you
have a lot of other stuff on the board since you might not be able
to do a quick rectangle-select without turning off many other
layers temporarily, and if there are other silk entities in the
bounding box, it's super tricky.
(2) If you want to change it, you have to go back to Inkscape,
edit, export, pstoedit, load into pcb, reposition, etc.
(3) The import process is tricky and buggy due to a combination of
pstoedit issues and pcb polygon issues to support 'cutouts' in
polygons. I've tried many tricks and I can't even remember which
one I used last time... I think it was DJ's "polystitch" plugin,
which works well, but it is manual effort intensive (you have to
point to each overlapping polygon that should be cut out) and you
would NOT want to use this for more than a few words of text.
Also, you have to re-do this work if you modify your text in
Inkscape!!
----- SOLUTIONS -----
There are several things that would significantly improve this
situation:
(1) Support grouping entities in pcb. Ctrl+g to group,
Ctrl+Shift+g to ungroup. Bob's your uncle.
(2) Implement actual font rendering in pcb as in the patch you can
find on Ineiev's FreeType2 patch
<https://bugs.launchpad.net/pcb/+bug/699460>.
(3) Improve the ability to import arbitrary vector graphics into
pcb without overlapping polygon/cutout issues.
Regards,
Colin
- Raw text -