International Support in Anzio

Printer-friendly versionPrinter-friendly version


Anzio (including AnzioWin and Anzio Lite) is able to handle many kinds of characters, including Latin, Cyrillic, Hebrew, Arabic, Turkish, Chinese, Japanese, Korean, and more, as well as line-drawing characters and many technical symbols.  Internally, Anzio stores all these characters in Unicode, a 16-bit coding scheme which defines all these characters. 

Anzio uses sophisticated techniques, working with routines provided by Windows, to display, print, and accept from the keyboard these characters.But the host system that Anzio is connected to may not work in Unicode; even if it does, passing 16-bit characters is a problem. 

So when communicating with the host, Anzio translates characters between Unicode and some encoding scheme, also known as a character set.  Anzio supports many different character sets.  All are based on ASCII, where, for instance, hex 41 is always "A". However, the host system may need to store, display, print, and accept as input a character such as "â". 

There are various standards for coding these non-ASCII characters, and Anzio supports many of them.For older systems, where it was important to keep characters limited to 7 bits, coding schemes were developed that replaced less used special characters, such as "\", with the accented characters used in, for instance, Norway. 

These coding schemes are called National Replacement Character sets, or NRCs.More recent efforts left all the 7-bit codes the same as ASCII, but established standards for 8-bit codes, that is, codes from hex 80 to hex FF (decimal 128 - 255).

Also, schemes have been developed to store characters in languages that have more than 256 characters, such as Chinese, Japanese, and Korean, using more than one byte per character.

In addition to NRCs, Anzio deals with the following character codings:

  • ISO - the "Windows" character set, which varies based on the language of your Windows installation.
  • DEC - very similar to ISO 8859-1.
  • OEM - sometimes called "linedraw" or "DOS".  Corresponds to the DOS codepage on your Windows installation.
  • ISO-8859-x, where "x" is 2 to 9 or 15. These are used in Europe and elsewhere.
  • DOS and Windows code pages, including Far East code pages. You must have installed Windows support for the particular codepage.
  • Library of Congress USMARC
  • Byte-encoded Unicode (UTF8)
  • CCCII for Chinese, Japanese, and Korean characters.
  • T160E encodings of diacritics.
  • ASM0449  for Arabic
  • KOI8-R  for Russian
  • Custom encodings, as defined by the user

Note: To use these encodings, you must set the terminal emulation type to VT100, VT220, VT320, VT420, SCOANSI, or ANZIO.

There are four areas affected by character encodings:

  • Characters received from the host must be displayed properly.
  • Characters typed on the keyboard, or pasted from the clipboard, may need to be translated before being sent to the host.
  • Characters sent from the host as part of a passthrough print job need to be printed properly.
  • Characters received from the host and CAPTURED must be encoded properly.


Setting the host's character set

Click the Communicate/Character Set menu item.  This will bring up a dialog box that allows you to choose a "Character set for screen".  The "7-bit" selection refers to NRCs, as explained above. If you do NOT need an NRC, as most people won't, select "International". Under "8-bit", specify one of the sets as described above.  If in doubt, choose "ISO".

You can also use the CHARSET command to specify the host's character encoding.

Setting print encodings

In order to passthrough-print non-ASCII characters, you must use AnzioWin (not Anzio Lite), and turn on Print Wizard. With any other configuration, coding is determined partly by the terminal type you are emulating, and partly by the printer itself.  However, screen prints should still work.To tell AnzioWin what coding scheme to apply to passthrough print, go to Communicate/Character Set, and make settings in the area labeled "Character set for passthrough print", similar to what was described above.

The printer's encoding can also be set with the PASSTHRU-CP command.

Keystroke entry

You may need to enter any of a wide range of characters into Anzio, or through Anzio into the host system. Some of these characters, or character-diacritic combinations, may not exist on your keyboard. This section describes the many ways of entering characters into Anzio.

Windows Keyboard Switching

Your Windows system can be configured to support various keyboards.  For instance, you can have both an English (US) and a Russian keyboard driver installed on your Windows, and then you can switch between them with a special key combination.  See your Windows documentation for more information.  Anzio will correctly understand keystrokes entered from any Windows keyboard driver.

Note that some versions of Windows have an "on-screen keyboard" available under the "accessibility" section. This feature may help you know what characters are assigned to what keys.

Alt-pad Unicode Entry

Since the days of DOS, it has been possible to enter non-ASCII characters using the Alt key and the numeric pad (NOT the numbers at the top of the alpha keyboard). For instance, alt-144 enters an E-acute (on a US Windows system). This number is taken from the "DOS" or "OEM" character set.For a character from the Windows ("ANSI" or "ISO") set, precede the number with a zero, such as Alt-0255 for a y-umlaut.

In Anzio, you can also enter any Unicode character by its decimal value. For instance, a Y-tilde has a Unicode value of hex 1EF8, which is decimal 7928. So you can do Alt-7928 to enter this character.

Dead-key Entry

Anzio has built-in support for treating certain control-key combinations as dead keys, that will combine with the next character. This is modeled after Microsoft Word. Check our documentation for more information on character entry through a dead-key approach.

Input Method Editors (IMEs)

If you have a Far East version of Windows, such as Korean, your keyboard driver for Korean will be an Input Method Editor (IME). When the IME is active, you go through a several steps to choose each character. Windows 2000 and Windows XP have support for all languages that Windows supports.  So even if you have an English version of Windows 2000, you can enable support for Chinese, Japanese, and Korean, and obtain their IMEs.  Anzio will properly recognize characters coming from all these IMEs.

Add-on Programs for Far East Input

Anzio will also work with most add-on programs for Far East input, such as Union Way, WinMass, Twin Bridge, etc.  Because Anzio can handle all the text display and printing tasks, these programs are useful only for providing input methods.It is important to coordinate the encoding scheme that an add-on uses to output a keystroke, with what Anzio expects as input.  See "Third party add-ons for Far East input 08D0C9EA79F9BACE118C8200AA004BA90B0200000008000000060000006D00610072006B0031000000 08D0C9EA79F9BACE118C8200AA004BA90B0200000008000000060000006D00610072006B0031000000 of the Anzio 12.5 manual


Anzio's command language includes two commands to aid in character input.

  • The COMPOSE command is useful to combine a character and a diacritic.
  • The UNICODE command translates a hexadecimal value to its Unicode character equivalent.

As with other Anzio commands, these can be programmed into macros and used in a variety of ways.

Paste from Clipboard

Whenever you paste into Anzio, whether to the host program or to the Function prompt, Anzio will pull Unicode characters from the clipboard if possible. So you can Copy data to the clipboard from various multilingual applications, such as Internet Explorer, Word, or Outlook, and paste it into Anzio. The converse is also true; you can copy from Anzio and paste into other applications.

Unicode Characters in Macros

Anzio's macro ("defined key") feature can handle any Unicode character.  So it is possible to define macros that send one or more characters to the host system, with proper encoding.

Automatic font selection

Anzio's ability to display and print Chinese, Russian, Turkish, and more implies a need to deal with multiple fonts.  In fact, Anzio has a unique ability to find appropriate fonts from those installed in Windows.You configure a primary font; for the screen (in View/Screen font), and for the printer (in File/Printer Font).  As Anzio is displaying (or printing), if it encounters any non-ASCII character, it checks to make sure that character is included in the primary font. If it is not, Anzio will search through the fonts installed on Windows to find a font that contains the character, and use that font for this character. This operation is automatic. So you can go from displaying English to Chinese to Russian to Turkish, with no user intervention. Preference is given to mono-spaced fonts, and to fonts that have the correct width for Far East characters.

Because diacritic handling is important to many of our customers who are libraries, Anzio also has special handling of character/diacritic combinations.  It can handle combinations that are not part of the Unicode standard, by combining them dynamically.  When displaying combinations, Anzio goes to considerable lengths to make sure the diacritics are available and properly placed, to always render good results.

Changing the language of the menus

You can change the language used in Anzio's menus, messages, and dialog boxes, from the native English to Spanish, French, etc.  Go to View/Menu Language, or use the MENULANGUAGE command.

Menu language support is provided in the form of files named ANZIOxxx.DLL, where xxx is an abbreviation for the language name. At the time of this writing, we provide Spanish and French in addition to English. If you are interested in creating another translation, please contact us.