Mailing list archives : pcb-rnd

ID:4392
From:ge...@igor2.repo.hu
Date:Tue, 22 Sep 2020 12:59:05 +0200 (CEST)
Subject:[pcb-rnd] new: ttf import
replies: 4393 from ka...@aspodata.se
Hi all,
 
I had this on the TODO for long, plus the latest feature request polling 
yielded it too, and Erich contributed the cubic curve approximation 
code... so now we have ttf import.
 
It lives in the import_ttf plugin, which gets compiled if you have 
libfreetype installed. Since gtk depends on freetype (through other 
spaceship libraries), most pcb-rnd users are normaly have it installed 
already.
 
1. What it does NOT do
 
No unicode in our text or font - pcb-rnd is still a simple, ASCII 
software, so any character in any text object is 8 bits wide, there's no 
exception, no trickery.
 
No native ttf rendering - we import and convert glyphs from ttf fonts into 
native pcb-rnd font. The first time you see any glyph appear on your 
screen, it's already pcb-rnd font.
 
2. What it does do
 
Pcb-rnd supports multiple fonts for many years by now. You can keep our 
simple, stroked default font and import various ttf fonts as extra pcb-rnd 
fonts. Then for each text object you can tell pcb-rnd which font to use 
for rendering.
 
You can do partial ttf imports and you can tell where to import within the 
code page. That is, you can create a font with a random mapping. A trivial 
example is that you can import the usual 7 bit ASCII (English 
alphanumerics and punctuations) and then use the upper 128 slots for 
importing the (c) sign, a few greek letters, omega, mu, etc. 
 
We can import any outline defined font format that libfreetype supports, 
so not only ttf, but some type 1 and opentype fonts. The only requirements 
are that libfreetype need to support the format and the font needs to be 
in a vector graphics, outline defined format Note: in theory ttf can be 
non-outline defined (in which case we can't use it).
 
As usual, we have both CLI and GUI support. 
 
CLI documentation: 
http://www.repo.hu/projects/pcb-rnd/user/09_appendix/action_details.html#loadttfglyphs
 
The GUI is has the same syntax and parameters, it's just a wrapper around 
the CLI. The GUI is accessible from the File/Import menu, in case you have 
the plugin compiled.
 
All operations are done on the currently selected font (use the fontsel 
action to change the selection).
 
You can choose to import with lines tracing the outline (make sure you set 
text thickness to something thin, like 1 mil, in the text object!) or 
import as polygons. This choice doesn't affect the usabulity of the 
resulting pcb-rnd font: you can put anything on silk, copper, mask, paste 
or in fact any layer you like.
 
You can use the built-in font editor after the import (the fontedit 
action). That way you can fine tune and save the converted font.
 
 
3. Disclaimer
 
We do convert the font on import. When you decide to use a font, you have 
to know fonts are coming with licenses. You need to check whether the 
license of the font allows conversion to other format before you import 
the font. Same consideration goes if you decide to share the converted 
font: you need to check if the original font license allows you to 
distribute modified (converted) variants.
 
Best regards,
 
Igor2
 
 
 

Reply subtree:
4392 [pcb-rnd] new: ttf import from ge...@igor2.repo.hu
  4393 Re: [pcb-rnd] new: ttf import from ka...@aspodata.se
    4394 Re: [pcb-rnd] new: ttf import from ge...@igor2.repo.hu
      4395 Re: [pcb-rnd] new: ttf import from ka...@aspodata.se