@raven-worx Didn't know about those methods, just tested it, for the lower case letter "g":
QFontMetricsF::leftBearing() returns: -4.17188
QFontMetricsF::rightBearing() returns: 0.6875
But even if I add the (negated) leftBearing to the total text width it still doesn't cover the tail entirely, so what's wrong here?
are you sure?!
Those values seem to be correct / make sense according to your posted screens.
Make sure that you add the absolute value (qAbs() for example). Also keep in mind that those values are only correct for the given font-size and that you can't add negative values to a image width.
I guess you are just doing incorrect calculations. Can you show the code of the calculation?
Having the name property set while loading a font by source is no problem under macOS but under Android, one Devanagari font started to dominate all instances, where Devanagari symbols appeared and all logic, how fonts are applied falls apart.