I'm building a UI application in macOS with dynamic localization (meaning that it's possible to switch language while the application is running).

I've noticed that if the initial language is configured to Japanese, and I switch to English on-the-fly, the text on the controls is rendered ok. However, on the opposite case, when the initial language is English and I switch to Japanese on-the-fly, the Japanese symbols on the text field come out a little bit enlarged. (see below drawings to emphasize the difference - the left snippet is the original rendering while the right one represents the enlarged version)

enter image description here

For any particular control, the language is changed by simply assigning the localized string (taken with help of NSLocalizedString function) to the stringValue property of the control.

These results appeared on all versions I've tested (both 10.13 and 10.12).

Perhaps anybody encountered similar results? how should I resolve them ?

Browse other questions tagged .