Holy cow, I wrote a book!
Take care not to hard-code boldfacing or italics into your code.
Chinese and Japanese characters (and to a somewhat
lesser extent, Korean characters)
do not suffer many types of boldface well.
(The three scripts Chinese, Japanese and Korean are collectively
called "CJK" scripts.)
Many characters are very intricate, and making the strokes bolder
can result in a big blob of ink.
Consider the Traditional Chinese character
慶 which means "celebrate".
Making it boldface results in
慶 which, depending on which operating system and fonts you
have installed, might come out as an unreadable mess.
Similarly, CJK scripts do not often use italics on screen,
since they also make the characters harder to read.
What should you do in your program if you need to emphasize something?
You should let the localizers choose how they want the emphasis to
be performed by allowing them to specify the font face, size and
That way, the localizers for Western languages can specify boldface,
whereas those localizing for Chinese or Japanese can specify
a larger font size or different font face instead.
Different versions of Windows cope with boldface CJK fonts with
different degrees of success.
Windows 2000, as I recall, used a simplified simulated boldface,
which didn't handle CJK fonts very well.
Windows XP, I'm told, has an enhanced boldface simulation algorithm
for CJK fonts.
The result is not perfect, but it is much better than what was available
in Windows 2000.
Windows Vista finally bridges the gap and provides separate boldface
fonts for CJK.
These custom boldface fonts have been tuned specifically for this purpose
and (I'm told) are quite readable.