Copy reference in FontLab?

t1mmy's picture

I've looked through the Font Lab manual and didn't find a similar function as Copy Reference in Fontographer. If a similar option is available in Font Lab what is it called? Thanks

tim

John Hudson's picture

What does the Copy Reference function in Fontographer do?

t1mmy's picture

The Copy Reference (I hope I got the name right) creates a copy of an existing glyph. For example: ü. In Fontographer you can select the lc u (that has already been created) and use the Copy Reference command which will paste your u to ü.

If you changed the shape of your lc u glyph, any Copy References you made with the lc u, such as ü, would be changed.

I wish I could explain this process a little bit clearer. :-)

tim

alan's picture

The command you want is Add Component (Option-F9 on Mac OS X).

Go first to the glyph cell where you want the reference to be. Hit Opt-F9, and a dialog will pop up asking you to specify the name of the glyph that you want to reference. This is great, because there is a preview of each glyph and a list of available glyphs that narrows down as you type more characters. Very very handy.

Also nice is the ability to - once the component is placed - change its source. Select the component, and go Edit -> Properties. You can then select what character is referenced, and numerically fudge with the component's position.

Nicer still, right-click the component and choose "Edit Component"; this will pop up a new glyph window with the source character loaded.

Alan

John Hudson's picture

Another nice feature is the ability to copy and paste composite glyphs within a font leaving the composites intact. This is handy if you need to make a pile of composites using the same base glyph, e.g. agrave aacute acircumflex adieresis etc. You can make one, copy it to the other cells, and then only need to replace one component in each composite. If you've correctly spaced your diacritic marks, you won't even need to adjust any positioning.

Note that you can't copy and paste a composite from one font to another without it decomposing. However, if you copy the composite and the base characters for its components, you can use the Append function to copy them to another font preserving the composites. [FontLab will also attempt to preserve visual TT hinting when you use the Append function to copy glyphs from one font to another. This works extremely well if you have identical CVT values (alignment zones, stem controls) in both fonts.]

Dang, FontLab is brilliant!

Diner's picture

Alan, does FL copy the spacing and kerning metrics data with it as well to the new composite character?

Stuart :D

alan's picture

Amen, John, FontLab r0x0rs!! To add to your comments, you can also use the "Generate Glyphs" command to build accented characters. Just type the name of the glyphs you wish to create (agrave aacute ... ) and the glyphs are automatically created, and the accents positioned overhead. Tweaking is often needed, but it's such a great start. (This was covered very nicely by Adam Twardoch in the FL forums, iirc.)

Stuart, I think if the glyph cell is empty, the width of the first component added is applied to the new glyph. As for metrics, you can use FontLab's collections/classes features to add any newly created accented characters to an existing glyph class. Kerning data can be tied to one "master" character in a class, and applied across the rest of the members of that class automatically. It's like Fog's kerning assistance, only way way way better.

Alan

t1mmy's picture

Thank you for all of your help. This is such a valuable resource for me and I'm glad that this is such a friendly community.

tim

John Hudson's picture

...you can also use the "Generate Glyphs" command to build accented characters

Yes. You can also edit the alias.dat file in the FontLab/Mapping folder, which contains the references from glyph name to components, e.g.

Adieresis A+dieresis


My alias.dat file even does Vietnamese smallcaps:

uni1EC6.small E.small+circumflex+dotbelowcomb

Syndicate content Syndicate content