PhilterPaper commented 3 days ago
I did have a good reason to change in the first place. I needed to pick up the widths of a bunch of new glyphs, in order to fix the "missing Cyrillic characters" bug (RT 57248). So, I wrote a utility to grab the widths from a TTF file, and used it to update the metrics files. Unfortunately, a handful of existing widths changed by a tiny amount (e.g., 667 -> 666). To preserve those existing widths, I would have to go through the 24 changed metrics files, compare them by eye, and manually update them. That's a lot of work that I'm hoping to avoid.
Now the corefonts should match what you would get for glyph widths used in ttfonts. I don't know about the rest of the metrics, such as bounding boxes. Whether the Windows fonts match the fonts found in Linux and Mac, I also don't know. If there is indeed no "gold standard" for these things, an arbitrary decision will have to be made. At this point, lacking further information on what fonts have what metrics, it appears to come down to either 1) reverting PDF::Builder's font metrics (old glyphs that changed) to what they were before (even though they would not match TTF behavior), or 2) updating a handful of empirically-determined string widths in one t-test of Text::Layout. Are there any other data points to consider?