WD2000: Characters Appear as Square Boxes in Printed Document (212380)



The information in this article applies to:

  • Microsoft Word 2000

This article was previously published under Q212380
IMPORTANT: This article contains information about modifying the registry. Before you modify the registry, make sure to back it up and make sure that you understand how to restore the registry if a problem occurs. For information about how to back up, restore, and edit the registry, click the following article number to view the article in the Microsoft Knowledge Base:

256986 Description of the Microsoft Windows Registry

SYMPTOMS

When you print a document that contains extended characters, such as Greek symbols, to certain printers that use printer drivers that do not accept Unicode characters, the extended characters may be printed as square boxes, even though they are displayed correctly on the screen.

The problem affects the following printers and printer drivers:

  • Canon BubbleJet BJ-C600, 4000, 4200, 4500, 4550, v 3.40
  • Canon Multipass 2500 3.40
  • Epson Color 500
  • Epson Stylus Color, v 2.x
  • Epson Stylus Pro / XL v. 2.11BE
  • HP Color LaserJet 5 PCL, printer driver version F 1.300
  • HP DeskJet 1600C, printer driver version 4.20
  • HP LaserJet 4 PCL, printer driver version 3.78
  • HP LaserJet 6P, standard printer driver
  • Okidata 4 laser printer

CAUSE

This problem occurs because these printer drivers do not provide support for Unicode characters.

WORKAROUND

To work around this problem, use one of the following methods.

Method 1: Set a Print Flag

There is a flag (registry setting) for the printer driver that causes it to use American National Standards Institute (ANSI) character layout functions instead of Unicode character layout functions. When set correctly, this flag allows the printer driver to print the extended characters correctly.

Use the procedure for setting a print flag that is appropriate to your situation.

WARNING: If you use Registry Editor incorrectly, you may cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that you can solve problems that result from using Registry Editor incorrectly. Use Registry Editor at your own risk.

Procedure 1: Set one registry entry that applies to all installed printers.

To set the registry entry, follow these steps:
  1. On the Start menu, click Run.
  2. In the Open box, type regedit and then click OK.
  3. Locate the following registry key:

    HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word\Options

  4. Double-click the Options key to open it.
  5. With the Options key selected, on the Edit menu, point to New and click String Value.
  6. In the right pane, type NoWideTextPrinting and press ENTER.
  7. With NoWideTextPrinting selected, on the Edit menu, click Modify.
  8. In the Value Data box, type the value 1 and click OK.
  9. On the Registry menu, click Exit, and then restart Word.

Procedure 2: Set a flag for an individual printer.

To set the registry entries, follow these steps:
  1. On the Start menu, click Run.
  2. In the Open box, type regedit and then click OK.
  3. Locate the following registry key:

    HKEY_CURRENT_USER\Software\Microsoft\Office\9.0\Word

  4. Double-click the Word key to open it.
  5. Under the Word key, click to select your printer name.

    NOTE: If your printer name is not displayed under the Word key, follow these steps:
    1. On the Registry menu, click Exit.
    2. Start Word.
    3. On the File menu, click Print. Under Printer, select your printer in the Name list, and then click the Close button (the X on the right side of the title bar). If the appropriate printer is already selected, then click Cancel.
    4. On the Tools menu, click Options.
    5. Click the Print tab, and then click OK.
    6. Start Procedure 2 again at step 1.
  6. With the printer key selected, on the Edit menu, point to New, and click String Value.
  7. In the right pane, type Flags and press ENTER.
  8. With Flags selected, on the Edit menu, click Modify.
  9. In the Value box, type 8192 and click OK.
The printer should now print the extended characters correctly.

Method 2: Printer-Specific Workarounds

The following information describes workarounds that are available for specific printer drivers. Note that not all printer drivers have a specific workaround; in this case, Method 1 is the only available workaround.

HP DeskJet 1600C

To work around this problem, follow these steps:
  1. On the Start menu, point to Settings, and then click Printers.
  2. Click the HP DeskJet 1600C ColorSmart printer icon.
  3. On the File menu, click Properties.
  4. In the HP DeskJet 1600C ColorSmart Properties dialog box, click the Details tab, and then click the Setup button.
  5. In the ColorSmart Setup dialog box, click the Advanced button.
  6. In the Advanced dialog box, select Use LaserJet III font scaling and click OK to close each of the open dialog boxes.

HP LaserJet 4 Series PCL

To work around this problem, follow these steps:
  1. On the Start menu, point to Settings, and then click Printers.
  2. Click the HP LaserJet 4 printer icon.
  3. On the File menu, click Properties.
  4. In the HP LaserJet 4 Properties dialog box, click the Fonts tab.
  5. In the Fonts dialog box, under TrueType fonts, select Print TrueType as graphics and click OK.

STATUS

Microsoft has confirmed that this is a problem in the Microsoft products that are listed at the beginning of this article.

MORE INFORMATION

ASCII characters are represented by the values 0 to 127; ANSI includes ASCII but adds characters 128 through 255. In all languages, the ASCII characters are exactly the same, but characters 128-255 are used for characters specific to a language, based on the code page associated with the language. This approach handles the character differences for most languages in the world.

Some languages (specifically, East Asian languages such as Japanese Kanji, several dialects of Chinese, and Korean) cannot be represented with only 256 characters. The written characters in these languages are entire words rather than individual letters, so there are typically more than 6,000 different characters.

Unicode was introduced to handle these languages. Unicode uses two bytes per character, instead of the standard one byte per character.

For additional information, please click the article number(s) below to view the article(s) in the Microsoft Knowledge Base:

99884 Unicode and Microsoft Windows NT

130052: Ideas to Remember as You Convert from ASCII or ANSI to Unicode


Modification Type:MajorLast Reviewed:8/20/2003
Keywords:kbbug kbenv kbpending kbprint KB212380