Hi,
* Append all fonts on child_list so that if a character is not available in the font, * other fonts will be automatically used. This is how Windows does to get a CJK character * when a latin font is specified.
That's not correct, actually Windows does this by using FontLink registry, so does wine now. Your patch seems to break FontLink. "Automatic font substitution" often means wine will choose the CJK replacement font which user doesn't prefer to.
On CJK env, if a latin font doesn't not have a FontLink, it will fallback to use the FontLink of "Microsoft Sans Serif", so user can set preferred font there.
2008/7/2 Liu Qishuai lqs.buaa@gmail.com:
2008/7/2 Dan Kegel dank@kegel.com:
Can you write a conformance test that verifies this behavior?
Sorry, I don't know how to write a test yet. Maybe I will write a test later.
Also, can you identify a bug in bugzilla this will fix?
Such as bug 4065, 10864, 14151.
Please set the following registry key, it should fix those bugs:
[Software\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink] 1208451304 "Microsoft Sans Serif"=str(7):"simsun.ttc,SimSun\0gulim.ttc,Gulim\0msgothic.ttc,MS UI Gothic\0mingliu.ttc,PMingLiU\0" "Tahoma"=str(7):"simsun.ttc,SimSun\0gulim.ttc,Gulim\0msgothic.ttc,MS UI Gothic\0mingliu.ttc,PMingLiU\0"
Maybe we need a patch to set up the default FontLink of "Microsoft Sans Serif" and "Tahoma" now, since FontLink works fine on WIne.