Standardize Character widths across 2 fonts

I have created two fonts that are structurally the same but have subtle differences in rounding of internal corners. The rounding does not effect the width of each character it is simply a stylistic thing. In Illustrator the size of the Uppercase A-Z, Numbers 0-9, Lowercase etc across both fonts are consistent. I noticed that if I take both fonts and lay them out in Photoshop overlapped on each other some of the letters were slightly off. So I did some experiments. When I batch import the characters to create each font, the widths and left/right margins of comparable letters/numbers/etc start the same. Also if I reset each font they have the same widths and margins (Example: Font 1 A matches Font 2 A, etc). When I do a Smart Space & Kern on each individually that is where differences creep up. Which I would understand and even expect. So then I tried importing spacing & metrics from one font to the other. I tried both options available. In both situations about 50% of the glyphs have a 1 number difference in either the width or the right margin. If I then go in to individually adjust any of these numbers, sometimes they allow for me to make an adjustment to both numbers. But often I’ll change one number, which changes another number and visa versa. It’s very tedious to do. I would totally do it if the numbers didn’t keep shifting. But they keep shifting.

Am I missing something? Is there a different order of changing batching or changing I should be doing?

Otherwise I think what I would want is an additional feature for the import spacing and metrics. Which would be also import the width. Basically match everything about the font I am importing other than the glyph itself.

I was able to unify all 105 glyphs of the two fonts but it was very painstaking. There were two ways that I found worked.

The first option was to go in and start to play with the Left, Width, Right numbers in an attempt to get the numbers to match. The first thing that I did was take screenshots of the Advanced Left, Width, Right numbers of both fonts (4 screenshots per font) and identified which glyphs had numeric differences. Thankfully not all characters had different widths and spacing. But about 40% of them had slightly different numbers. Unfortunately this was often very tedious because the numbers didn’t cooperate most of the time. Often when I would change one number another number would jump out of place. My guess is that under the hood each symbol has slightly different width and some of them have decimal points even if the Advanced boxes only show you a whole number. Sometimes I could only get the Left & Width to match up but the Right was one number low. If that happened I would save the font then re-open it and about 50% of the time all 3 numbers would match up.

The second option was to take the first font and save it as a new font. Then one by one replace all 105 glyphs. After doing some research I found you can do that manually by typing a letter/symbol in the character input box and one by one using the “Create Glyph” button to replace just that character’s vector without changing the Left, Width, Right settings. After I did this a few glyphs would still have slightly different numbers for the Left, Width, Right in the advanced settings. Which I would have to individually go in and change and have some of the similar problems mentioned above.

I didn’t mention it in the original post, but I actually had 2 different font styles with 9 weights each. So the above took some time. But thankfully it’s done now!