Some of my fonts use bizzare units per em values. I wanted to change this to the standard, the trouble is that this changes the spacing characteristics of the font. Books that were formatted with the older font, no longer format correctly.
Problem
My font used units of 1050 f-units per em.
After I changed the value from 1050 to 1024 the characters got slightly bigger on the screen and in my documents, which I didn’t want.
Objective
To change the settings to 1024 f-units per em, without resizing the characters.
Solution
To check the effects of the changes, I used the Capital I as a reference point. These were the original metrics of the capital I.
Advance width = 323
Left bearing = 16
Caps height = 626
• I copied the entire font with Control A, Control C.
• I changed the units per em value back to 1024
• I pasted the characters back into the font
Resulting effect on my reference character
Advance width = 315
Left bearing = 15
Caps height = 610
Much to my surprise, hinting information was preserved.
So the font is still the same size on the screen and in documents, but the units per em value has been changed. I checked by opening a long book and comparing the last page to a PDF file. They seemed to be identical.
This is a very quick and satisfactory solution to changing unit per em values, or for making global changes to the size of characters.
Note: One important point that I overlooked is that while doing this composites will be converted to simple glyphs. To avoid this, you would need to copy only the simple glyphs and paste them back into the same positions.
From the Edit menu, Select Composites, then from the Edit menu, Invert selection. Now all simple glyphs (and empty glyphs) will be selected. Copy, change the funits/em, then paste without losing the selection.