Windows-1257, znane także jako CP-1257, bądź WinBaltic – 8-bitowe kodowanie znaków, zaprojektowane do pokrycia języków takich jak język estoński, litewski, czy łotewski, używane w systemach Microsoft Windows. Zestaw ten jest w znacznej części kompatybilny z ISO 8859-13 i nadaje się do kodowania języka polskiego.

Porównanie z ISO 8859-13 edytuj

Porównanie kodowań
Hex CP-1257 ISO 8859-13 Hex CP-1257 ISO 8859-13 Hex CP-1257 ISO 8859-13 Hex CP-1257 ISO 8859-13
0x80 ZK 0xA0   0xC0 Ą 0xE0 ą
0x81 NZ ZK 0xA1 NZ 0xC1 Į 0xE1 į
0x82 ZK 0xA2 ¢ 0xC2 Ā 0xE2 ā
0x83 NZ ZK 0xA3 £ 0xC3 Ć 0xE3 ć
0x84 ZK 0xA4 ¤ 0xC4 Ä 0xE4 ä
0x85 ZK 0xA5 NZ 0xC5 Å 0xE5 å
0x86 ZK 0xA6 ¦ 0xC6 Ę 0xE6 ę
0x87 ZK 0xA7 § 0xC7 Ē 0xE7 ē
0x88 NZ ZK 0xA8 Ø 0xC8 Č 0xE8 č
0x89 ZK 0xA9 © 0xC9 É 0xE9 é
0x8A NZ ZK 0xAA Ŗ 0xCA Ź 0xEA ź
0x8B ZK 0xAB « 0xCB Ė 0xEB ė
0x8C NZ ZK 0xAC ¬ 0xCC Ģ 0xEC ģ
0x8D ¨ ZK 0xAD ­ 0xCD Ķ 0xED ķ
0x8E ˇ ZK 0xAE ® 0xCE Ī 0xEE ī
0x8F ¸ ZK 0xAF Æ 0xCF Ļ 0xEF ļ
0x90 NZ ZK 0xB0 ° 0xD0 Š 0xF0 š
0x91 ZK 0xB1 ± 0xD1 Ń 0xF1 ń
0x92 ZK 0xB2 ² 0xD2 Ņ 0xF2 ņ
0x93 ZK 0xB3 ³ 0xD3 Ó 0xF3 ó
0x94 ZK 0xB4 ´ 0xD4 Ō 0xF4 ō
0x95 ZK 0xB5 µ 0xD5 Õ 0xF5 õ
0x96 ZK 0xB6 0xD6 Ö 0xF6 ö
0x97 ZK 0xB7 · 0xD7 × 0xF7 ÷
0x98 NZ ZK 0xB8 ø 0xD8 Ų 0xF8 ų
0x99 ZK 0xB9 ¹ 0xD9 Ł 0xF9 ł
0x9A NZ ZK 0xBA ŗ 0xDA Ś 0xFA ś
0x9B ZK 0xBB » 0xDB Ū 0xFB ū
0x9C NZ ZK 0xBC ¼ 0xDC Ü 0xFC ü
0x9D ¯ ZK 0xBD ½ 0xDD Ż 0xFD ż
0x9E ˛ ZK 0xBE ¾ 0xDE Ž 0xFE ž
0x9F NZ ZK 0xBF æ 0xDF ß 0xFF ˙

Gdzie „NZ” oznacza znak niezdefiniowany w kodowaniu, „ZK” oznacza znak kontrolny, „Znak” oznacza znak wspólny dla obydwu kodowań, a „   ” to kontrolny znak formatujący o zerowej szerokości.

Tablica kodów edytuj

Poniższa tabela przedstawia znaki i ich szesnastkowe kody w Windows-1257.

Windows-1257
  x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 xA xB xC xD xE xF
0x Znaki kontrolne
1x
2x SP ! " # $ % & " ( ) * + , - . /
3x 0 1 2 3 4 5 6 7 8 9 : ; < = > ?
4x @ A B C D E F G H I J K L M N O
5x P Q R S T U V W X Y Z [ \ ] ^ _
6x ` a b c d e f g h i j k l m n o
7x p q r s t u v w x y z { | } ~ ZK
8x NZ NZ NZ NZ NZ ¨ ˇ ¸
9x NZ NZ NZ NZ ¯ ˛ NZ
Ax NBSP NZ ¢ £ ¤ NZ ¦ § Ø © Ŗ « ¬ SHY ® Æ
Bx ° ± ² ³ ´ µ · ø ¹ ŗ » ¼ ½ ¾ æ
Cx Ą Į Ā Ć Ä Å Ę Ē Č É Ź Ė Ģ Ķ Ī Ļ
Dx Š Ń Ņ Ó Ō Õ Ö × Ų Ł Ś Ū Ü Ż Ž ß
Ex ą į ā ć ä å ę ē č é ź ė ģ ķ ī ļ
Fx š ń ņ ó ō õ ö ÷ ų ł ś ū ü ż ž ˙

W powyższej tabeli, znak o kodzie 0x20 jest zwykłą spacją, 0xA0 jest spacją niełamliwą, znak 0xAD jest miękkim myślnikiem.

Mapowanie na Unicode edytuj

Poniższa tabela przedstawia miejsca znaków z Windows-1257 w Unicode.

Windows-1257
Hex Znak Unicode Hex Znak Unicode Hex Znak Unicode Hex Znak Unicode
0x80 U+20AC 0xA0 NBSP U+00A0 0xC0 Ą U+0104 0xE0 ą U+0105
0x81 NZ 0xA1 NZ 0xC1 Į U+012E 0xE1 į U+012F
0x82 U+201A 0xA2 ¢ U+00A2 0xC2 Ā U+0100 0xE2 ā U+0101
0x83 NZ 0xA3 £ U+00A3 0xC3 Ć U+0106 0xE3 ć U+0107
0x84 U+201E 0xA4 ¤ U+00A4 0xC4 Ä U+00C4 0xE4 ä U+00E4
0x85 U+2026 0xA5 NZ 0xC5 Å U+00C5 0xE5 å U+00E5
0x86 U+2020 0xA6 ¦ U+00A6 0xC6 Ę U+0118 0xE6 ę U+0119
0x87 U+2021 0xA7 § U+00A7 0xC7 Ē U+0112 0xE7 ē U+0113
0x88 NZ 0xA8 Ø U+00D8 0xC8 Č U+010C 0xE8 č U+010D
0x89 U+2030 0xA9 © U+00A9 0xC9 É U+00C9 0xE9 é U+00E9
0x8A NZ 0xAA Ŗ U+0156 0xCA Ź U+0179 0xEA ź U+017A
0x8B U+2039 0xAB « U+00AB 0xCB Ė U+0116 0xEB ė U+0117
0x8C NZ 0xAC ¬ U+00AC 0xCC Ģ U+0122 0xEC ģ U+0123
0x8D ¨ U+00A8 0xAD SHY U+00AD 0xCD Ķ U+0136 0xED ķ U+0137
0x8E ˇ U+02C7 0xAE ® U+00AE 0xCE Ī U+012A 0xEE ī U+012B
0x8F ¸ U+00B8 0xAF Æ U+00C6 0xCF Ļ U+013B 0xEF ļ U+013C
0x90 NZ 0xB0 ° U+00B0 0xD0 Š U+0160 0xF0 š U+0161
0x91 U+2018 0xB1 ± U+00B1 0xD1 Ń U+0143 0xF1 ń U+0144
0x92 U+2019 0xB2 ² U+00B2 0xD2 Ņ U+0145 0xF2 ņ U+0146
0x93 U+201C 0xB3 ³ U+00B3 0xD3 Ó U+00D3 0xF3 ó U+00F3
0x94 U+201D 0xB4 ´ U+00B4 0xD4 Ō U+014C 0xF4 ō U+014D
0x95 U+2022 0xB5 µ U+00B5 0xD5 Õ U+00D5 0xF5 õ U+00F5
0x96 U+2013 0xB6 U+00B6 0xD6 Ö U+00D6 0xF6 ö U+00F6
0x97 U+2014 0xB7 · U+00B7 0xD7 × U+00D7 0xF7 ÷ U+00F7
0x98 NZ 0xB8 ø U+00F8 0xD8 Ų U+0172 0xF8 ų U+0173
0x99 U+2122 0xB9 ¹ U+00B9 0xD9 Ł U+0141 0xF9 ł U+0142
0x9A NZ 0xBA ŗ U+0157 0xDA Ś U+015A 0xFA ś U+015B
0x9B U+203A 0xBB » U+00BB 0xDB Ū U+016A 0xFB ū U+016B
0x9C NZ 0xBC ¼ U+00BC 0xDC Ü U+00DC 0xFC ü U+00FC
0x9D ¯ U+00AF 0xBD ½ U+00BD 0xDD Ż U+017B 0xFD ż U+017C
0x9E ˛ U+02DB 0xBE ¾ U+00BE 0xDE Ž U+017D 0xFE ž U+017E
0x9F NZ 0xBF æ U+00E6 0xDF ß U+00DF 0xFF ˙ U+02D9

Linki zewnętrzne edytuj