Changing the default encoding type in Pocket Internet Explorer 4.01
or higherCESD-S-0091Applies To:
Overview:
This article discusses how to alter the default browser document encoding (the
Code Page) under Pocket Internet Explorer 4.01 and higher.
More Info:
With the multiple and diverse numbers of languages and alphabet that exist
on the Internet today, computers need to be able to represent the correct character
onto the screen of any web browser and in any language. The most obvious step
in this is a requirement for there to be a compatible font on the computer allowing
the web browser to access and draw the correct character to the screen. In the
computer the font is one of the last steps involved, behind this front end exists
a literal map of character IDs (codes) and the subsequent character that is
to be output (this in turn is linked to the applicable character referenced
in the font file).
This map of characters is called the CodePage (Character Map being the Mac
term). In general the CodePage is an 8-bit (1 byte) table, restricting the number
of mapable characters to an upper limit of 256. The CodePage contains the characters
which are most frequently used by any particular Alphabet. For example the CodePage
on the computer you are using while reading this document will contain a representation
of all the character combinations you can see on the keyboard in front of you.
In the Western Roman alphabet this is predominantly A-Z, 0-9 and grammatical/punctuation
characters (. , - ( ) * & % $ etc.).
If you were to write a document in the Western European CodePage which is designed
to correctly render English, French, Spanish, Italian, German, Swedish, Icelandic.
Then forcibly display the document using the CodePage designed for the Russian
alphabet. The document would fail to render correctly, appearing as a random
dispersal of characters throughout the body of the document. Making little to
no sense to the reader.
In an attempt to minimise confusion, and to negate the technical need to understand,
or even know your local CodePage. Most Operating Systems, word processors and
web browsers will automatically attempt to detect the language being used, either
by scanning the document, or looking for pointers left by the author. As an
example, one of the first pieces of code received by a web browser when requesting
any document from the HPC:Factor web server is a line informing the browser
that the site is encoded using the Western European alphabet, and to use the
appropriate (ISO-8859-1 [Latin1]) CodePage.
There is one notable exception on the Internet with the CodePage limitation
of containing only 256 characters. UTF-8 which use 8-bit addressing. Using UTF-8
characters are displayed using between 1 and 4 bytes. (UTF-7, 16 and 32 are
also valid CodePages, but these are not generally seen within web browsers,
particularly the latter two)
How-to Guide:
There are occasions when automatic detection of a web page's intended encoding
is unsuccessful, especially when it comes to inexperienced programmers. There
are also instances where you may be using a device intended for use in another
market which did not ship with your regional CodePage pre-set as default (causing
pages with unknown encoding to render in the incorrect CodePage).
WARNING: If you use a Registry Editor incorrectly, you
may cause serious problems that may require you to hard reset your Handheld
PC back to its factory installed configuration. Edit your Windows CE registry
at your own risk.
The following steps require the use of a registry editor. For more information
on obtaining a registry editor see CESD-S-0082.
- Close all Pocket Internet Explorer sessions
- Open your devices registry editor
- Navigate through the hierarchy to:
HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International
- Using the table below, locate your preferred encoding type
- Edit the value of the binary value Default_CodePage to match the
CodePage (Hex) of your desired CodePage
e.g. 04 E2 00 00 for Central European Alphabet (Windows)
- Create a new Key and name it to match the CodePage (Decimal) value
of your required encoding if it doesn't already exist
e.g. 1250 for Central European Alphabet (Windows)
- Enter the new key e.g. HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\International\1250\
- Create a new Binary Value named IEFontSize
- Set the value data to one of:
04 00 00 00 - Defaults Browser Text Size to Largest
03 00 00 00 - Defaults Browser Text Size to Larger
02 00 00 00 - Defaults Browser Text Size to Medium
01 00 00 00 - Defaults Browser Text Size to Smaller
00 00 00 00 - Defaults Browser Text Size to Smallest
- Close the registry editor and soft reset your device
|
Pocket Internet Explorer CodePages (Encoding)
|
|
Alphabet
|
Code
|
CodePage (Decimal)
|
CodePage (Hex)
|
|
Arabic Alphabet (ISO)
|
iso-8859-6
|
28596
|
B4 6F 00 00
|
|
Arabic Alphabet (Windows)
|
windows-1256
|
1256
|
E8 04 00 00
|
|
Baltic Alphabet (ISO)
|
iso-8859-4
|
28594
|
B2 6F 00 00
|
|
Baltic Alphabet (Windows)
|
windows-1257
|
1257
|
E9 04 00 00
|
|
Central European (DOS)
|
ibm852
|
852
|
54 03 00 00
|
|
Central European Alphabet (ISO)
|
iso-8859-2
|
28592
|
B0 6F 00 00
|
|
Central European Alphabet (Windows)
|
windows-1250
|
1250
|
E2 04 00 00
|
|
Chinese Simplified (GB2312)
|
gb2312
|
936
|
A8 03 00 00
|
|
Chinese Simplified (HZ)
|
hz-gb-2312
|
52936
|
C8 CE 00 00
|
|
Chinese Traditional (Big5)
|
big5
|
950
|
B6 03 00 00
|
|
Cyrillic Alphabet (DOS)
|
ibm866
|
866
|
62 03 00 00
|
|
Cyrillic Alphabet (ISO)
|
iso-8859-5
|
28595
|
B3 6F 00 00
|
|
Cyrillic Alphabet (KOI8-R)
|
koi8-r
|
20866
|
82 51 00 00
|
|
Cyrillic Alphabet (Windows)
|
windows-1251
|
1251
|
E3 04 00 00
|
|
Greek Alphabet (ISO)
|
iso-8859-7
|
28597
|
B5 6F 00 00
|
|
Greek Alphabet (Windows)
|
windows-1253
|
1253
|
E5 04 00 00
|
|
Hebrew Alphabet (ISO)
|
iso-8859-8
|
28598
|
B6 6F 00 00
|
|
Hebrew Alphabet (Windows)
|
windows-1255
|
1255
|
E7 04 00 00
|
|
IA5 (German)
|
DIN_66003
|
20106
|
8A 4E 00 00
|
|
IA5 (IRV)
|
irv
|
20105
|
89 4E 00 00
|
|
IA5 (Norwegian)
|
NS_4551-1
|
20108
|
8C 4E 00 00
|
|
IA5 (Swedish)
|
SEN_850200_B
|
20107
|
8B 4E 00 00
|
|
Japanese (Auto Select)
|
_autodetect
|
50932
|
F4 C6 00 00
|
|
Japanese (EUC)
|
x-euc
|
51932
|
DC CA 00 00
|
|
Japanese (JIS)
|
iso-2022-jp
|
50220
|
2C C4 00 00
|
|
Japanese (JIS-Allow 1 byte Kana)
|
csISO2022JP
|
50221
|
2D C4 00 00
|
|
Japanese (JIS-Allow 1 byte Kana)
|
ISO-2022-JP
|
50222
|
2E C4 00 00
|
|
Japanese (Shift-JIS)
|
shift-jis
|
932
|
A4 03 00 00
|
|
Korean
|
ks_c_5601
|
949
|
B5 03 00 00
|
|
Korean (Auto Select)
|
_autodetect_kr
|
50949
|
05 C7 00 00
|
|
Korean (EUC)
|
euc-kr
|
51949
|
ED CA 00 00
|
|
Korean (ISO)
|
iso-2022-kr
|
50225
|
31 C4 00 00
|
|
Latin 3 Alphabet (ISO)
|
iso-8859-3
|
28593
|
B1 6F 00 00
|
|
Thai (Windows)
|
windows-874
|
874
|
6A 03 00 00
|
|
Turkish Alphabet
|
windows-1254
|
1254
|
E6 04 00 00
|
|
Ukrainian Alphabet (KOI8-RU)
|
koi8-ru
|
21866
|
6A 55 00 00
|
|
Universal Alphabet
|
unicode
|
1200
|
B0 04 00 00
|
|
Universal Alphabet (Big-Endian)
|
unicodeFEFF
|
1201
|
B1 04 00 00
|
|
Universal Alphabet (UTF-7)
|
utf-7
|
65000
|
E8 FD 00 00
|
|
Universal Alphabet (UTF-8)
|
utf-8
|
65001
|
E9 FD 00 00
|
|
User Defined
|
x-user-defined
|
50000
|
50 C3 00 00
|
|
Vietnamese Alphabet (Windows)
|
windows-1258
|
1258
|
EA 04 00 00
|
|
Western Alphabet
|
iso-8859-1
|
1252
|
E4 04 00 00
|
|
Western Alphabet (ISO)
|
ISO-8859-1
|
28591
|
AF 6F 00 00
|
|
Western Alphabet (Windows)
|
windows-1252
|
1252
|
E4 04 00 00
|
|
Highlighted Alphabets are the only options available on English
devices, other regions may vary.
|
If you make an error with the modifications to the Windows CE CodePage registry
settings, Pocket Internet Explorer will be unable to render any page
content correctly.
In the event that you are working out the hex equivalent of additional CodePage
ID's be aware that the first two byte pair and the second two byte pair are
inverted. The bytes 5 through 8 are required for the process to work correctly.
E.g. 04 E4 00 00 (1252) is entered at E4 04 00 00
|