Putting on an International Interface

Tips on designing UIs that can be accepted around the world

Nadine Kano

March 10, 1995

There are two basic rules for designing a user interface that is internationally acceptable and easy to localize. First, use generic graphics. Second, avoid overcrowding.

The Windows Interface: An Application Design Guide for Windows 95 and Windows NT (Microsoft Press) gives clear recommendations for designing a consistent, easy-to-follow user interface that should result in a program suitable for international markets.

Bitmaps and icons

Bitmaps and icons are a standard feature of Windows-based applications, especially on toolbars. It takes creativity to come up with bitmaps specific enough to identify a setting or operation, yet free of cultural references and stereotypes that don't translate well.

Coming up with different bitmaps for different language editions of a product, however, is a waste of time. A good way to avoid this time drain is to take advantage of either the common toolbar button illustrations defined for Windows 95 or existing international symbols, such as those used on road signs or in airports.

Remember to keep bitmaps simple. The more complex they are, the more difficult they are to decipher. In general, it's a good idea to keep bitmaps clear of letters that represent the first letters of commands (for example, O for Open), and punctuation marks whose meanings may change from locale to locale, such as quotation marks.

Also, don't make text part of bitmaps or icons unless it won't be translated (for example, your company name). Instead, draw text on buttons using the Win32 TextOut call, or take advantage of the ToolTips feature provided by the Microsoft Foundation Class Library (MFC).

It's a good idea to be cautious with representations of animals, religious and mythological symbols, national emblems, colors, people (especially racial, cultural, or gender stereotypes), hand gestures, and body language, which may be misinterpreted or may offend users in another country.

Avoid pictures of sports equipment, utensils, national monuments, or any symbols that might be familiar to some cultures but unfamiliar to others. Pictures that represent a play on words in one language may be completely meaningless in others. Also, keep in mind that not all cultures read text from left to right. A picture of an arrow pointing to the left, indicating "undo," might be confusing to an Arabic or Hebrew speaker. The following illustrations show bitmaps that would probably be confusing to many users.

Take a cultural sounding

Try to be culturally sensitive when choosing sounds for your program as well. Users in the United States, for example, may find it helpful to hear a beep when they make a mistake, but users in Japan may find a beep embarrassing, because it calls attention to their blunders. Sometimes the meaning or images associated with certain sounds vary from country to country. Telephones and sirens, for instance, have different sounds in different countries.

For non-multimedia applications, sound should be a secondary method for sending messages to the user anyway, because some software users are hearing impaired, don't have sound-generating equipment, work in a noisy environment, or prefer to have sounds turned off.

Menus and dialog boxes

The length of English text often grows when translated. The English word "Edit" becomes "Bearbeiten" in German, and "Sort Ascending" becomes "Lajittele nousevassa järjestyksessä" in Finnish. So, design menu bars, status bars, toolbars, title bars, and dialog boxes to allow for this expansion. Limit the number of menus on your menu bar so that the bar does not wrap to a second line when translated.

Abbreviating main menu names on the menu bar is rarely acceptable, although abbreviating words on status bars is common. Keep in mind that in some languages even abbreviations require more space than in English, and that in ideographic languages, such as Japanese or Chinese, abbreviations often don't exist.

Sometimes you can use symbols to represent words. In Europe, for example, it is acceptable to translate the English word "Help" as a question mark (?) to save space.

Dialog boxes crammed full of information will not fit on the screen when translated into some languages. You can use the tabbed dialog controls available in Windows 95 to minimize this problem (see illustration below). You should also employ multiline text boxes to display messages or multiple-word descriptions that will become long enough to wrap in some languages. If you're not sure whether a menu or dialog box design will work sufficiently for several languages, have someone translate a few examples and then double-check.

Use Windows 95 tabbed dialog controls to keep dialog boxes from becoming too large.

Keying in on the keyboard

Keyboard differences also pose potential problems. Keyboard layouts change according to locale. Not all characters exist in all keyboard layouts. When assigning shortcut key combinations, make sure you can reproduce them using international keyboards, especially if you will be shipping an unlocalized product to countries with widely differing keyboard layouts. You can choose from a number of different keyboard layouts via the Windows Control Panel.

Most European keyboards contain an "AltGr" key (usually the right ALT key), which can be used to access a third character on some keys. On some keyboard layouts, ALTGR is used to produce basic Latin letters. On the Polish keyboard, for instance, you have to press ALTGR to generate accented forms of the letters A, E, C, N, S, L, O, and Z.

Pressing the altgr key sends Windows the same virtual key codes as pressing CTRLl+ALT. Don't make characters that are produced with ALTGR or SHIFT+ALTGR on some keyboards part of CTRL+ALT or SHIFT+CTRL+ALT shortcut combinations (it won't work because Windows can't parse the extra CTRL and ALT virtual key codes). The CTRL+ALT+[ shortcut key combination, for example, cannot be reproduced on Canadian, Portuguese, Swedish, or Spanish keyboards, among others, because on these keyboards the [ character is produced with the ALTGR key.

Other keyboard combinations are reserved for system use by some editions of Windows; ALT+~ invokes input method editors on systems in the Far East. Steer clear of the following characters when assigning shortcut keys:

@ £ $ { } [ ] \ ~ | ^ ‘ < >

Consider using numbers and function keys (F4, F5, and so on) instead of letters in shortcut key combinations. These combinations are not as intuitive for the user as letters, but they don't have to be localized. Using combinations that can be produced with the keyboard of the target locale will accommodate most users, but bear in mind that some locales, such as the Netherlands, Eastern Europe, and Arabic- and Hebrew-speaking countries, use more than one standard keyboard. Using numbers and function keys becomes even more appealing when you consider the ability to use multiple keyboards introduced with Windows 95, because virtually all keyboard layouts include numbers and function keys.

This article is adapted from Developing International Software for Microsoft Windows by Nadine Kano. It will be published by Microsoft Press in spring 1995.

Nadine Kano is a globalization guru in the Developer Relations Group. She has typed her fingers to the bone writing a guide to developing international software for Microsoft Press.