On windows the fonts in JUCE look a bit more fuzzy because Windows usually uses more agressive hinting for fonts.
And inputting 你好 with the IME in a text field will work, but the font we're using doesn't contain those characters so they come up as boxes, or they are not visible at all, depending on if you use the DirectWrite text renderer or not (tested on Windows 7).
Finding out the default UI font on Windows is a bit complicated:
1) you have to use the right API function. Windows has a few legacy API functions, which return some default font used in various obsolete versions of Windows. The call you need is
// Please note I left out any error checking!
NONCLIENTMETRICS ourMetrics = {sizeof(ourMetrics)};
SystemParametersInfo(SPI_GETNONCLIENTMETRICS, sizeof(ourMetrics), &ourMetrics, 0);
and then you can get the font name from the lfMessageFont member and use it as the default font name for a juce::Font. The height value is set to a negative number, indicating it is the character height of the font—see point (2) for that. The height is returned in pixels.
A common default for western languages is Segoe UI, 12px, at 96DPI, corresponding to the 9pt you see in the Window Color and Appearance control panel. The x-height of this font for this size is 6px.
2) The font height in JUCE and the font size in Windows have a different meaning. In Windows the font height often refers to the character height, which excludes any extra space for accents etc. This extra space is known as the internal leading. Take a look at the scheme here: https://support.microsoft.com/en-us/kb/32667.
In JUCE the font height always includes the internal leading. Some more calls to the API reveal this extra spaces amounts to 3px:
HDC dc = GetDC(0);
SelectObject(dc, (HGDIOBJ)CreateFontIndirect(&ourMetrics.lfMessageFont));
TEXTMETRIC ourFontMetrics;
GetTextMetrics(dc, &ourFontMetrics);
So the font height to use in JUCE is 15px.
As a consequence, if you want to use the default font size, you can't use hard-coded font sizes in your application.
3) If you're using a higher DPI setting, the API will return larger pixel sizes, which you have to scale down to what it would be at 96dpi.
4) So how do you actually use that font in your JUCE program? In my experience JUCE will make your life fairly miserable if you want to stray from the default font. Some of the default fonts for components can be overridden in your LookAndFeel, for the others you can set the font explicitely via the component (for instance TextEditors). For still others you'll have to override the paint() method. I haven't found an elegant way to override the font for all the components in your application.
Final note: What is the default font in JUCE on Windows?
JUCE uses Verdana and Tahoma. Those fonts were designed to be legible at a small pixel size, owing to the low resolution of monitors at the time (around 1995). They have short ascenders and descenders compared to the x-height. Back then the default font size would be 8pt, which translates to 11px, and an internal leading of 2px. And thus a font height in JUCE of 13px. Once again we have an x-height of 6px.
The default height is 14px, and you may have noticed it indeed appears a bit larger than the default font in Windows (it is visible in the menu of the Introjucer).