I have a customer in Korea (using windows 7 in Korean) who has a problem with Swedish characters appearing correctly.
He can reproduce the problem with a small sample app.
To reproduce it, drop these components on a form:
Code: Select all
object es1: TEdit
Left = 14
Top = 16
Width = 121
Height = 21
TabOrder = 0
Text = 'kylsk'#229'p'
end
object es2: TEdit
Left = 14
Top = 43
Width = 121
Height = 21
TabOrder = 3
Text = 'Hall'#229
end
object ee2: TEdit
Left = 141
Top = 43
Width = 121
Height = 21
TabOrder = 4
Text = 'Hello'
end
object ee1: TEdit
Left = 141
Top = 16
Width = 121
Height = 21
TabOrder = 2
Text = 'Refrigerator'
end
object ek1: TEdit
Left = 268
Top = 16
Width = 121
Height = 21
TabOrder = 1
Text = #45257#51109#44256
end
object ek2: TEdit
Left = 268
Top = 43
Width = 121
Height = 21
TabOrder = 5
Text = #50504#45397
end
object XLS: TXLSReadWriteII5
ComponentVersion = '5.20.69'
Version = xvExcel2007
DirectRead = False
DirectWrite = False
Left = 395
Top = 29
end
Code: Select all
XLS.Version := xvExcel2007;
XLS.Sheets[0].AsString[0,0] := 'Swedish';
XLS.Sheets[0].AsString[1,0] := 'English';
XLS.Sheets[0].AsString[2,0] := 'Korean';
XLS.Sheets[0].AsString[0,1] := es1.text;
XLS.Sheets[0].AsString[1,1] := ee1.text;
XLS.Sheets[0].AsString[2,1] := ek1.text;
XLS.Sheets[0].AsString[0,2] := es2.text;
XLS.Sheets[0].AsString[1,2] := ee2.text;
XLS.Sheets[0].AsString[2,2] := ek2.text;
// Make the first row bold.
XLS.CmdFormat.BeginEdit(XLS.Sheets[0]);
XLS.CmdFormat.Font.Style := [xfsBold];
XLS.CmdFormat.Apply(0, 0, 3, 0);
// Autosize columns.
XLS.sheets[0].AutoWidthCols(0, 2);
XLS.SaveToFile('c:\SwedishEnglishKorean.xlsx');
ShellExecute(Application.Handle, nil, 'c:\SwedishEnglishKorean.xlsx', '', '', SW_SHOW);
I am using Delphi XE2, compiling in 32 bit, XLSReadWriteII version 5.20.69, Windows 7.
Thanks
John