Go to the Russian language version of this page

Cyrillic fonts and encodings under Windows

Paul Gorodyansky 'Cyrillic (Russian): instructions for Windows and Internet'



Web: two types of Cyrillic encoding for a Windows client

Ok, you work with MS Windows and would like to browse Russian language Web sites or just use Cyrillic in a word processor.

If you are not going to work with Cyrillic (Russian) on the Internet, and would like to, say, just create a Russian document in MS Word, then you do not need to read this, Web-related section and can go directly to the next section of this page - that will help you to use Russian in a word processor or a text editor:
  "Cyrillic fonts included into Windows".

Different authors of Cyrillic Web pages use different methods to represent Cyrillic letters, that is, they use different encodings.
An encoding determines what code (numeric value) is assigned to each letter of a character set.
For example, in a coded Western European character set English letter 'A' has a code 65, German a-umlaut - 228, etc.

The encoding method is directly related to the font used, that is, fonts are made for a specific encoding.

Historically (and unfortunately), there are several different, incompatible encodings for Cyrillic:

The difference is that the same Cyrillic letters have different codes in these encodings and this is why they are incompatible.
That is,

Again, it happens so because fonts are made for specific encodings and a text is stored in computers as a set of the codes representing the letters.
For example, English word 'dog' is stored as a set of codes for the corresponding letters: 100 111 103.
English letters have the same codes in various encodings, and thus the word 'dog' will be readable with any font on any computer (even Japanese).

For Cyrillic it's not the case. For example, a Russian word for "three" has the following Russian letters in it - tri.
Written with a font of Windows-1251 Cyrillic encoding, it will be stored as 242 240 232 - these are the codes assigned to these letters in this encoding.

Now, if we try to read this text using some other encoding's font, say, of KOI8-R or "Macintosh Cyrillic" encoding, where same Cyrillic letters have different code values, then the text will be unreadable.

For example, in a KOI8-R font these 3 codes represent absolutely different Russian letters, so this text (242 240 232) will be shown as the following set of Russian letters - tri1 that does not make any sense.

It was a small piece of the theory/explanation and now back to the practice.

An MS Windows user usually deals with the following two Cyrillic encodings on the Web:

Note. In non-Web applications under MS Windows - such as editors and word processors (f.e. MS Word), people use only one encoding for Russian - Windows-1251, it's what Microsoft uses for the system:
all Microsoft fonts that support Cyrillic ("Arial", "Times New Roman", "Courier New", etc.) are fonts made for Windows-1251 encoding as well as Cyrillic keyboard tools.

Modern browsers and mail/news programs - MS Internet Explorer, Outlook Express, MS Outlook, Netscape ver. 4 and higher, Mozilla, etc. - do not require KOI8-R fonts to process KOI8-R encoding texts (Web pages, e-mail messages, etc.)
Moreover, such modern programs just do not work with KOI8-R fonts.
The explanation will be given right below, in the next section devoted to KOI8-R.

Older systems (such as Windows 3.1/3.11) and older programs (such as Netscape 3) did require KOI8-R fonts.
Some applications still require KOI8-R fonts, but they are not main-stream programs, very few people use them (f.e. some Terminal emulation programs, older versions of e-mail program Eudora).

I do offer to download free KOI8-R fonts for this type of users (older systems, rare software), but I've placed the corresponding information at the end of this page, because it's rarely needed - it's in the section of this page called
"Free non-Microsoft, 'old' (made for Windows 3.1) Russian fonts"


Why an MS Windows user needs to know about KOI8-R encoding?
How come then this user does not need KOI8-R fonts / keyboard?

KOI8-R, as well as other Cyrillic encodings, is used sometimes to represent a Russian text on a Web page, but its main purpose is to serve as a network, transport encoding since the early days of the Internet.
You see, different computers use different local encodings for Russian:

Unfortunately, these encodings are incompatible. It's how it happened back in the computer history, and now it's a reality.
That is, a Mac user can not read a Windows-1251 text without a special conversion, and vice versa.

So, how all these different computers exchange Russian messages over the global network, the Internet?
They use a 'common ground' - KOI8-R encoding that serves as a 'transport' encoding.
Most of the Internet-related software that can work with Cyrillic (Mail and News servers as well as e-mail client programs and Newsreaders) 'know' that KOI8-R is a network encoding, and when a Russian message 'travels' over the Internet in this encoding, all different computers know how to handle it.
That is, say a Macintosh e-mail program did not need to know how to process all numerous Cyrillic encodings, it had to know only its own, local one, plus KOI8-R as a 'transport' encoding.
(Surely, if a program can not work with Cyrillic at all, for example, English version of Lotus cc:Mail, then it does not know about any of Russian encodings, including KOI8-R).

Imagine, if all various computers send messages to the Internet in their own local encodings (from Windows - in "Windows-1251", from UNIX - in "ISO-8859-5", etc.)!

The simplest example is Newsgroups. A Newsgroup can be read by a user of Mac, Windows, or Unix. Then messages in this Newsgroup just must use one common Cyrillic encoding for a user of each platform to be able to read it.
Now imagine that this News Server keeps a thread (with Cyrillic in Subject) of a Russian-language Newsgroup where one message is from a Unix user - in ISO-8859-5, another message is from an OS/2 or DOS user - in CP-866, another one from a Windows user - in Windows-1251.
Such thread will be unreadable for any user...

Having only one, common encoding for the Russian messages travelling over the Internet, resolves the situation, and this common encoding is - historically - KOI8-R:
KOI8-R was used as a 'common ground' for Russian in the areas of e-mail, Usenet Newsgroups, Telnet, etc. from the early days of the Internet, even when the Web did not exist, so all Internet-related programs developed to work with Cyrillic were built with the assumption that a network encoding is KOI8-R.

It's why most e-mail letters in Russian are sent in KOI8-R, and most of Russian language Usenet Newsgroups (Discussion Groups) use KOI8-R that makes Newsgroups articles readable by a user of any type of computer.

Obviously, a group of users where everyone say works under Windows, can decide that they will exchange messages in "Windows-1251" encoding via e-mail or in Windows-only Newsgroup.

But in reality, even Windows-only Newsgroups such as ones of microsoft.public.ru.russian.* hierachy (microsoft.public.ru.russian.windowsxp et al) still use KOI8-R...

That is, KOI8-R is a de-facto standard for the exchange of Russian texts over the Internet, it's a network encoding, while different computers use different local encodings for Russian. One of such local encodings is Windows-1251 (Windows Cyrillic) on a machine running MS Windows.


KOI8-R and Internet software under MS Windows

A user of MS Windows needs an ability to work with KOI8-R encoding in addition to the 'native' Russian encoding of a Windows-based machine - Windows-1251:

If a software used in the cases listed above is an old one (such as Netscape 3) or not sophisticated enough, then a user must install KOI8-R fonts (offered down below on this page) and KOI8-R keyboard tools (offered in the Russian Keyboard section of my site) to be able to read and write in KOI8-R.

Otherwise, if a program is a modern one, it allows an MS Windows user work only with a local encoding - Windows-1251 ("Cyrillic(Windows)"), a user does not need KOI8-R fonts and keyboard tools.
For instance, an e-mail letter can be typed using Windows-1251 fonts and keyboard tools, but will be sent to the Internet in KOI8-R to 'travel' over the network in this 'common ground' encoding, as required.

Here are some of such modern Internet programs:

These programs perform, 'behind the scenes', all necessary conversions of the Russian text between Windows-1251 and KOI8-R when needed.
Therefore, if you have these programs, you do NOT need KOI8-R fonts and KOI8-R keyboard tools:

MS Internet Explorer, Outlook Express, MS Outlook 2000, Netscape, Mozilla - all these programs have to be tuned-up for Russian, you need to know how to work with Russian using these programs.
After you finish reading this Fonts and Encodings page, please see the corresponding tune-up instructions for the programs listed above on my page
"Russian in Browsers/Mail/News under Windows".

Other programs (e-mail programs, graphic programs, music programs, etc.) require their own, unique tune-up for Russian.
I personally know the tune-up only for the programs listed above, so if you need to tune-up say Eudora or WinAMP, then please see the links to other people sites in the section "More Russification. Questions and Answers, Links" of my site.

Web and two types of fonts

Generally, World Wide Web uses 2 methods to show you a text on your screen:

Each type of a page requires its own type of font to be used in your browser:

To Table of Contents


Microsoft's Cyrillic CP-1251 fonts included into Windows

Some free non-Microsoft Cyrillic fonts (of KOI8-R and Windows-1251 encoding families) are offered in the next section.

But Code Page 1251 (CP-1251) is what Microsoft uses for Cyrillic in MS Windows.
(the following alternative names are often used for the Cyrillic CP-1251 encoding:
"Cyrillic(Windows)", "Windows-1251").

That is, whenever you see "Cyrillic" in a Microsoft's font or keyboard description, it really means "Cyrillic, Windows-1251 encoding".

Therefore, for this, native-for-Windows encoding you should, instead of downloading some old non-Microsoft fonts, use Microsoft's own Cyrillic fonts of much better quality that are already included into your Windows.
Moreover, many modern applications just do not work with such old non-MS fonts, they work only with modern Unicode fonts included into Windows, such as "Arial" et al.
(There is also no need in most cases to download KOI8-R fonts either - as it was explained above, modern programs do not work with KOI8-R fonts, they process KOI8-R texts without such fonts).

Cyrillic letters of Windows-1251 encoding are present in such standard multilingual Windows fonts as "Arial", "Times New Roman", "Courier New", et al.

These standard Microsoft Cyrillic fonts are available on all modern versions of Windows, even when it's a non-Russian Windows
(for non-Russian Windows 3.1/3.11 it's not the case and a user must download those free non-Microsoft fonts offered in the next section).

Here is the procedure of checking the availability and/or activation of these standard fonts of Cyrillic(Windows-1251) encoding included into Windows 95/98/ME/NT 4.0/2000/XP/2003/Vista:

1. Russian (localized) versions of MS Windows

Users of Russian versions of MS Windows already have such CP-1251 fonts activated (as well as users of PanEuropean Windows 95).

Just open Wordpad editor (Start/Programs/Accessories/Wordpad) and see Cyrillic variations of several fonts, for example, you will see, in addition to the "Western" variation (script), the following:

2. Windows 95/98/ME

Most users of the U.S. version (or other non-Russian version) of Windows 95/98/ME initially don't have these Cyrillic variations of standard Microsoft fonts.
To activate Cyrillic in the standard MS fonts, these users must install a free Microsoft software - "MS Multilanguage Support" - usually via Control Panel.
(In addition to the fonts, this activates Cyrillic keyboard files, too).

Here is my short installation instruction for it:
  "Windows 95/98/ME: Cyrillic and MS Multilanguage Support".

3. Windows NT 4.0/2000/XP/2003/Vista

Users of the U.S. (or any other non-Russian) version of Windows NT 4.0/2000/XP/2003/Vista already have such standard, Windows-1251 fonts active!

Here are couple ways to verify that:

Important Windows 2000 note:

Eventhough Cyrillic Windows-1251 fonts are already active in Windows 2000, it requires (unlike Windows NT 4.0 and Windows XP/2003/Vista) a special procedure to enable full Cyrillic support for a user, for example, enable encoding conversion and/or getting Russian keyboard layout file.
That is, a user of Windows 2000 must perform the following additional steps (not required under Windows NT 4.0/XP/2003/Vista).

How to enable full user-level Cyrillic support under Windows 2000:

  1. Start / Settings / Control Panel
  2. In the CONTROL PANEL window - double-click on the globe-like Regional Options icon
  3. In the Regional Options window, in its General tab, see the second frame - Language Settings for the System.
  4. See if you have a box "Cyrillic" checked.
    If not, then click on this box to activate user-level Cyrillic support and then click on Apply below right.
    You will be asked to insert the Windows 2000 CD-ROM and then the required files will be copied from there.

You saw above how to enable Cyrillic(Windows-1251) support in standard MS fonts that are included into Windows 95/98/ME/NT 4.0/2000/XP/2003/Vista.

So, if you, with your version of MS Windows:

then you should skip the rest of this fonts-related page, because the text below is about those old free non-Microsoft KOI8-R and CP-1251 Russian fonts that I collected from the Web while working with Netscape 3 and/or Windows 3.1
These old free non-Microsoft KOI8-R and CP-1251 Russian fonts just do not work in modern programs such as Internet Explorer, Outlook Express, Mozilla, etc. so users of such programs have no reason to read the rest of this page.
(Modern programs work with modern, Unicode fonts included into MS Windows, such as "Arial" et al)

To Table of Contents

Free non-Microsoft Russian fonts

1. Download suggested fonts from the Web

Below you will find download location and descriptions for free Cyrillic fonts - both KOI8-R and Windows-1251 encoding - that I found on the Internet, tested, and suggest to use for the Web-related work under MS Windows - in some rare-case situations only.

Important. As it was explained right above, at the end of the previous section, you need these old non-Microsoft fonts only in the following cases (the majority of Windows users don't need them):

So only if you need the above rare-case scenarios, then read further, otherwise this page is over.

All these free non-Microsoft fonts allow you to read both English and Russian on the same page (they include English letters along with Cyrillic ones).

You need to create a directory(folder) on your PC where you will place these font files, for example, C:\RUSFONTS.

I have created a single file(archive) ForWWW.zip that includes all these free Russian fonts.
To download a file, you just need to click on its underlined name in a link below. Then your browser offers you to SAVE FILE.
In this SAVE FILE dialog, you need to select the directory(folder) that you created to keep font files - C:\RUSFONTS.

NOTE: If the browser instead begins to display the contents of this file on the screen, then try to download it again, but this time hold down the SHIFT key on your keyboard while clicking on that file.
Here it is:

  file ForWWW.zip

After downloading the archive (ForWWW.zip file), you need to open (unzip) it to extract the files in it.
You can extract files from the archive using the shareware program WinZip for Windows if you have it OR simply with the small free MS DOS program pkunzip.
If you don't have PKUNZIP, you can download it here: pkunzip.exe.
Put it into your Windows (or WinNT) directory(folder), that is, into your main MS Windows folder.

To extract font files using pkunzip, open an MS-DOS window first:

and then type these two MS DOS commands (the first one switches to the required directory (folder) and the second one does the extraction):
                C:\........>    cd \RUSFONTS
                C:\RUSFONTS>    pkunzip forwww.zip 

2. Descriptions for downloaded fonts

NOTE: I have collected into ForWWW.zip such fonts that work Ok with old Netscape 2,3 and other older programs under various versions of Windows.
If you found somewhere another version of the same font, it may not work correctly with Netscape ver. 2,3 or with some Windows platform (for example, NT 4.0).

Remember, to work with Cyrillic in old browser, for example, Netscape 3, you need to install at least 4 new Cyrillic True Type fonts in your Windows:

(as it was decribed at the beginning of this page, modern browsers don't work with KOI8-R fonts, they require only Windows-1251 fonts)

a) KOI8-R fonts:

b) CP-1251(Windows) fonts:

To Table of Contents

3. How to install these fonts in Windows

Follow instructions below for Windows 3.1,3.11 and for newer Windows to install downloaded free fonts in your Windows system.

Windows 95 and newer:

  2. Click on FONTS icon
  3. In the menu, select FILE, INSTALL NEW FONTS
  4. Select folder, where you have all these unpacked font files - C:\RUSFONTS.
    There is a button on the right - SELECT ALL. Click on it
  5. Click on OK button

Windows 3.1, 3.11:

  1. In Windows 3.1, you have such group (window) as MAIN. It is where, for example, File Manager program is located.
    In this MAIN group there is an icon CONTROL PANEL. Open this application by double-click.
  2. You will see, in this CONTROL PANEL window, several icons. One of them is FONTS.
    Open now this FONTS application by double-click.
  3. You will see a list of fonts and several buttons on the right.
    One of them is ADD. Click on it. It will offer you to choose drive and directory.
  4. Select directory, where you have all these unpacked font files - C:\RUSFONTS.
    There is a button on the right - SELECT ALL. Click on it.
  5. Click on OK button. You will be back to the screen with the list of fonts.
  6. Click on CLOSE button.

Now you have these Russian fonts installed in your Windows and ready to use if you need them in some non-modern Internet application such as for example Netscape 3.

To Table of Contents

Paul Gorodyansky. 'Cyrillic (Russian): instructions for Windows and Internet'