Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
A major aspect of creating an international user interface involves translating the text used in title bars, menus, other controls, messages, and registry entries. To make this process easier, store interface text as resources in your application's resource file, rather than including it in the source code of the application. In addition, translate any menu commands that your application stores for its file types in the system registry.
When translating text, remember that each language has its own syntax and grammar. The following are some general guidelines to keep in mind when translating text:
- Avoid using vague words that can have several meanings in
different contexts.
- Avoid colloquialisms, jargon, acronyms, and abbreviations.
- Use good grammar. Translation is a difficult task even when a
translator does not have to deal with poor grammar.
- Avoid dynamic, or run-time, concatenation of different strings
to form new strings — for example, composing messages by combining
frequently used strings. An exception is the construction of file
names and names of paths.
- Avoid hard-coding file names in a binary file. File names may
need to be translated.
- Avoid including text in images and icons. Doing so requires
that these also be translated.
Translation of interface text often increases the length of text by 30 percent or more. In some extreme cases, the character count can increase by more than 100 percent; for example, the English word "move" becomes "verschieben" in German. Accordingly, if the amount of space for displaying text is strictly limited, as in a status bar, restrict the length of the interface text to approximately one-half of the available space. In contexts that allow more flexibility, such as dialog boxes and property sheets, allow 30 percent for text expansion in the interface design. Text in message boxes, however, should allow for text expansion of about 100 percent. Avoid having your software rely on the position of text in a control or window because translation may require movement of the text.
Expansion due to translation affects other aspects of your product. A localized version is likely to affect file sizes, which potentially can change the layout of your installation disks and setup software.
Additionally, translation is not always a one-to-one correspondence. A single word can have multiple translations in another language. Adjectives and articles sometimes change their spelling according to the gender of the nouns they modify. Therefore, be careful when reusing a string in multiple places. Similarly, several words may have only a single meaning in another language. This is particularly important when creating keywords for the Help index for your software.
In This Section
- Adhering to International Conventions
-
Describes the keyboard, key and character conventions that must be taken into account when creating internationalized software.
- Preparing for Cultural Differences
-
Describes the images and symbol meanings that differ between cultures.