Add Units per em conversion

Got a request? Post it here. Please do not post bug reports here.
Post Reply
nabsltd
Posts: 132
Joined: Tue Oct 18, 2016 12:35 am

Add Units per em conversion

Post by nabsltd »

Currently, if a user has two fonts with different "units per em" settings, when they copy and paste an entire glyph between the two fonts, FontCreator does the right thing and re-scales the units per em on the paste so the outlines are the right size. The re-scaling does not happen if you copy just a single contour and paste it into the glyph editor window. This makes sense, as it's essentially just a collection of points with no reference to the original scale. The only workaround to this is to paste an entire glyph, then copy the contour you want, but this requires an empty glyph as a temporary workspace.

One workaround is to create an entirely new font with the "target" units per em and paste every glyph from the source font into the target, using "Paste Special" to get all the information (mappings, etc.). Then, the font can be saved and worked with using the new units per em. Unfortunately, this doesn't preserve any OpenType features, and copy/paste of those will cause errors in the font display, as the positioning values are tied to the units per em.

The feature I want is to be able to choose a menu item (probably in the "Font" menu) named something like "Rescale units per em", pick a new units per em, and have every glyph scaled like the copy/paste does when there are different units per em in the source and destination fonts. This feature should also scale any glyph positioning values in the OpenType features. And, please don't suggest that I use a spreadsheet to fix these values...FontCreator is a font editor and being able to fix these values automatically is something it should be able to do.
PJMiller
Top Typographer
Top Typographer
Posts: 976
Joined: Tue Jun 16, 2015 8:12 pm
Location: Sheffield, South Yorkshire
Contact:

Re: Add Units per em conversion

Post by PJMiller »

I just use the Transform Dialog or the Transformation Wizard, depending on whether its one glyph or many. They have a Scale tab (or Scale command) and you can easily work out the scale factor if you know the 'units per em' of each font, then just use absolute scaling from a fixed point ( 0,0 ) and the glyphs are correctly scaled.
nabsltd
Posts: 132
Joined: Tue Oct 18, 2016 12:35 am

Re: Add Units per em conversion

Post by nabsltd »

PJMiller wrote: Sun Jul 29, 2018 9:24 am I just use the Transform Dialog or the Transformation Wizard, depending on whether its one glyph or many. They have a Scale tab (or Scale command) and you can easily work out the scale factor if you know the 'units per em' of each font, then just use absolute scaling from a fixed point ( 0,0 ) and the glyphs are correctly scaled.
If you just need a character or two, then this works fine. If you need most of the font for some reason, it's a bit of a pain, though, as you likely want to retain composites and their members. separately. If you scale the composite member and the composite that uses it, you can sometimes get unexpected results (double scaling). This may not be true any more in the current version of FontCreator, though.

Also, if you really want to use the whole font as a base but maybe want more precision (like moving from 1000 to 2048 units per em), then you need to have the OpenType positioning features scaled along with the font.
PJMiller
Top Typographer
Top Typographer
Posts: 976
Joined: Tue Jun 16, 2015 8:12 pm
Location: Sheffield, South Yorkshire
Contact:

Re: Add Units per em conversion

Post by PJMiller »

Don't scale the composites, just the simple characters.

The accents may need adjustment but if you make the adjustment to the accent all the composites which use that accent will be adjusted. Don't adjust the position of each accent in each composite separately.
Post Reply