Apache OpenOffice (AOO) Bugzilla – Issue 103897
Thai text in some UI elements will be displayed overlapped on Windows Vista / Windows 7
Last modified: 2013-08-07 15:31:14 UTC
Step to reproduced :- This will happen only when you enable Tools > Options > Use system font for user interface (which is the default). 1.Input line in Calc. 1.1 Open OpenOffice.org Calc. 1.2 Type “สวัสดี Hello ขอบคุณ Thanks” in the input line. 1.3 You'll see the overlapped text in the input line. 2.List box. 2.1 Open OpenOffice.org Calc. 2.2 Choose menu Format > Cells. 2.3 On the Numbers tab, choose Language: Thai, Category: Date. 2.4 You'll see the overlapped text at the Format List box.
Created attachment 63852 [details] input line screenshot
Created attachment 63853 [details] list box screenshot
which font do you use? what are the font settings? what are the locale settings of your system? can you see this in other OOo application to?
Locale setting: I've tried both Thai and English-US as Windows locale with the same result. Font: This bug happen when I use the theme "Windows Aero" which use the font "Segoe UI". The bug disappear if I use the theme "Windows Standard" which use the font "Tahoma". So this bug is font-relate. But OOo UI should work with any font anyway. Application: The bug happen in any UI component such as the list of files in File > Recent Documents if the filename is in Thai. Or File > Properties > Description if you type Thai in any text box.
Still need more info?
Reading the code at http://svn.services.openoffice.org/opengrok/xref/DEV300_m92/vcl/source/window/window.cxx#268 bool Window::ImplCheckUIFont( const Font& rFont ) 269 { 270 if( ImplGetSVData()->maGDIData.mbNativeFontConfig ) 271 return true; 273 String aTestText; 274 aTestText.Append( Button::GetStandardText( BUTTON_OK ) ); .... 283 aTestText.Append( Button::GetStandardText( BUTTON_ABORT ) ); 285 return HasGlyphs( rFont, aTestText ) >= aTestText.Len(); 286 } We found that "bool Window::ImplCheckUIFont(const Font&)" only check the validity of a font (in this case, the system font, e.g. Segoe UI") by only checking the availability of important button texts. However, the UI font will be used for many more cases, e.g. Calc input line, menu text, File>Properties>Description text box. That is, it must support *any* script that the current user may input, which may not limited to the current UI locale. The problem show up in Thailand because we usually use English UI so "Segoe UI" is thought by ImplCheckUIFont() as valid but actually it lacks Thai glyphs. If the function also check for Thai glyphs then the result UI font will fallback to Tahoma. Better implementation of ImplCheckUIFont() is needed.
@of we'd like to fix this bug because it makes lots of trouble with Thai users. Do you think we should fix ImplCheckUIFont() ?
@ pl: Please have a look.
Resetting target accroding to new task handling scheme announced here: http://blogs.sun.com/ratte/entry/some_changes_for_the_openoffice
Reset assignee on issues not touched by assignee in more than 2000 days.