5

I am developing a little application. The captions (text displayed on the Labels) with WideChars (Greek letters) are correct under Vista and Windows7 in almost every case, but in some cases (on some computers) I have only empty squares. The language is the same, the operating system too. What can cause it? Please help me how can I resolve this problem.

Ken White
  • 117,855
  • 13
  • 197
  • 405
Andras Kelemen
  • 151
  • 1
  • 1
  • 5

2 Answers2

7

The problem is that the fonts on the computers that are failing do not have glyphs for the characters you are displaying. Typically this happens on XP machines. Vista comes with much more complete fonts.

You may need to distribute fonts, or encourage users to install language packs, to ensure fidelity.

David Heffernan
  • 572,264
  • 40
  • 974
  • 1,389
  • 2
    Taking this further, you could embed a font inside of your EXE and distribute it automatically when your app runs: http://delphi.cjcsoft.net/viewthread.php?tid=47317 – Jerry Dodge Nov 22 '11 at 23:53
  • Just be aware that fonts are copyrighted as well and you may not have the right to distribute them! – Marjan Venema Nov 23 '11 at 07:30
2

If you are testing a Greek translation of your application, you should test it on a Greek installation of Windows. An English installation of Windows does not necessarily come with fonts that support your range of Unicode characters.

Windows 7 Ultimate and Enterprise provide additional language packs as optional updates via Windows Update. Your users with those versions of Windows 7 may have installed the optional language packs, which may include versions of the fonts that support the Greek letters you are using. Other versions of Windows 7 do not include additional language packs. Windows is really only guaranteed to full support the language that was installed, or languages that share a common character set. You can't rely on users having a specific language pack.

It's most likely not a real problem if you are translating your program based on the user's locale settings. Those running your program in Greek will have Windows installations that support Greek.

Marcus Adams
  • 49,523
  • 8
  • 81
  • 132