Windows-1258, znane także jako CP-1258, bądź WinVietnamese, jest 8–bitowym kodowaniem znaków zaprojektowanym do pokrycia języka wietnamskiego, jest używane w systemie Microsoft Windows. Korzysta z łączonych znaków diakrytycznych. Nie jest kompatybilne z kodowaniem VISCII, jest natomiast podobne do Windows-1252, różniąc się brakującymi znakami „Š” i „Ž” (które do CP1252 zostały dodane później), czterema literami z diakrytykami zastąpionymi samymi łączonymi znakami diakrytycznymi, oraz kilkoma innymi zmienionymi kombinacjami litera/znak diakrytyczny.
Użycie łączonych diakrytyków spowodowało, że Windows-1258 może pokryć dużą liczbę kombinacji litera/znak diakrytyczny z języka wietnamskiego bez konieczności uszczuplenia pokrycia symboli, bądź znaków kontrolnych.
Porównanie z Windows-1252 Porównanie kodowań Hex CP-1258 CP-1252 Hex CP-1258 CP-1252 Hex CP-1258 CP-1252 Hex CP-1258 CP-1252 0x80 € 0xA0 0xC0 À 0xE0 à 0x81 NZ 0xA1 ¡ 0xC1 Á 0xE1 á 0x82 ‚ 0xA2 ¢ 0xC2  0xE2 â 0x83 ƒ 0xA3 £ 0xC3 Ă Ã 0xE3 ă ã 0x84 „ 0xA4 ¤ 0xC4 Ä 0xE4 ä 0x85 … 0xA5 ¥ 0xC5 Å 0xE5 å 0x86 † 0xA6 ¦ 0xC6 Æ 0xE6 æ 0x87 ‡ 0xA7 § 0xC7 Ç 0xE7 ç 0x88 ˆ 0xA8 ¨ 0xC8 È 0xE8 è 0x89 ‰ 0xA9 © 0xC9 É 0xE9 é 0x8A NZ Š 0xAA ª 0xCA Ê 0xEA ê 0x8B ‹ 0xAB « 0xCB Ë 0xEB ë 0x8C Œ 0xAC ¬ 0xCC ◌̀ Ì 0xEC ◌́ ì 0x8D NZ 0xAD 0xCD Í 0xED í 0x8E NZ Ž 0xAE ® 0xCE Î 0xEE î 0x8F NZ 0xAF ¯ 0xCF Ï 0xEF ï 0x90 NZ 0xB0 ° 0xD0 Đ Ð 0xF0 đ ð 0x91 ‘ 0xB1 ± 0xD1 Ñ 0xF1 ñ 0x92 ’ 0xB2 ² 0xD2 ◌̉ Ò 0xF2 ◌̣ ò 0x93 “ 0xB3 ³ 0xD3 Ó 0xF3 ó 0x94 ” 0xB4 ´ 0xD4 Ô 0xF4 ô 0x95 • 0xB5 µ 0xD5 Ơ Õ 0xF5 ơ õ 0x96 – 0xB6 ¶ 0xD6 Ö 0xF6 ö 0x97 — 0xB7 · 0xD7 × 0xF7 ÷ 0x98 ˜ 0xB8 ¸ 0xD8 Ø 0xF8 ø 0x99 ™ 0xB9 ¹ 0xD9 Ù 0xF9 ù 0x9A NZ š 0xBA º 0xDA Ú 0xFA ú 0x9B › 0xBB » 0xDB Û 0xFB û 0x9C œ 0xBC ¼ 0xDC Ü 0xFC ü 0x9D NZ 0xBD ½ 0xDD Ư Ý 0xFD ư ý 0x9E NZ ž 0xBE ¾ 0xDE ◌̃ Þ 0xFE ₫ þ 0x9F Ÿ 0xBF ¿ 0xDF ß 0xFF ÿ
Gdzie „NZ” oznacza znak niezdefiniowany w kodowaniu, „Znak” oznacza znak wspólny dla obydwu kodowań, „◌” to łączony znak diakrytyczny, a „ ” to kontrolny znak formatujący o zerowej szerokości.
Tablica kodów Poniższa tabela przedstawia znaki i ich szesnastkowe kody w Windows-1258. Windows-1258 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 Ÿ Ax NBSP ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ SHY ® ¯ Bx ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ Cx À Á Â Ă Ä Å Æ Ç È É Ê Ë ◌̀ Í Î Ï Dx Đ Ñ ◌̉ Ó Ô Ơ Ö × Ø Ù Ú Û Ü Ư ◌̃ ß Ex à á â ă ä å æ ç è é ê ë ◌́ í î ï Fx đ ñ ◌̣ ó ô ơ ö ÷ ø ù ú û ü ư ₫ ÿ
W powyższej tabeli znak o kodzie 0x20 to zwykła spacja, 0xA0 to twarda spacja, a znak 0xAD to miękki dywiz.
„ZK” oznacza znak kontrolny.
Mapowanie na Unicode Poniższa tabela przedstawia miejsca znaków z Windows-1258 w Unicode.
Windows-1258 Hex Znak Unicode Hex Znak Unicode Hex Znak Unicode Hex Znak Unicode 0x80 € U+20AC 0xA0 NBSP U+00A0 0xC0 À U+00C0 0xE0 à U+00E0 0x81 NZ 0xA1 ¡ U+00A1 0xC1 Á U+00C1 0xE1 á U+00E1 0x82 ‚ U+201A 0xA2 ¢ U+00A2 0xC2  U+00C2 0xE2 â U+00E2 0x83 ƒ U+0192 0xA3 £ U+00A3 0xC3 Ă U+0102 0xE3 ă U+0103 0x84 „ U+201E 0xA4 ¤ U+00A4 0xC4 Ä U+00C4 0xE4 ä U+00E4 0x85 … U+2026 0xA5 ¥ U+00A5 0xC5 Å U+00C5 0xE5 å U+00E5 0x86 † U+2020 0xA6 ¦ U+00A6 0xC6 Æ U+00C6 0xE6 æ U+00E6 0x87 ‡ U+2021 0xA7 § U+00A7 0xC7 Ç U+00C7 0xE7 ç U+00E7 0x88 ˆ U+02C6 0xA8 ¨ U+00A8 0xC8 È U+00C8 0xE8 è U+00E8 0x89 ‰ U+2030 0xA9 © U+00A9 0xC9 É U+00C9 0xE9 é U+00E9 0x8A NZ 0xAA ª U+00AA 0xCA Ê U+00CA 0xEA ê U+00EA 0x8B ‹ U+2039 0xAB « U+00AB 0xCB Ë U+00CB 0xEB ë U+00EB 0x8C Œ U+0152 0xAC ¬ U+00AC 0xCC ◌̀ U+0300 0xEC ◌́ U+0301 0x8D NZ 0xAD SHY U+00AD 0xCD Í U+00CD 0xED í U+00ED 0x8E NZ 0xAE ® U+00AE 0xCE Î U+00CE 0xEE î U+00EE 0x8F NZ 0xAF ¯ U+00AF 0xCF Ï U+00CF 0xEF ï U+00EF 0x90 NZ 0xB0 ° U+00B0 0xD0 Đ U+0110 0xF0 đ U+0111 0x91 ‘ U+2018 0xB1 ± U+00B1 0xD1 Ñ U+00D1 0xF1 ñ U+00F1 0x92 ’ U+2019 0xB2 ² U+00B2 0xD2 ◌̉ U+0309 0xF2 ◌̣ U+0323 0x93 “ U+201C 0xB3 ³ U+00B3 0xD3 Ó U+00D3 0xF3 ó U+00F3 0x94 ” U+201D 0xB4 ´ U+00B4 0xD4 Ô U+00D4 0xF4 ô U+00F4 0x95 • U+2022 0xB5 µ U+00B5 0xD5 Ơ U+01A0 0xF5 ơ U+01A1 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 ˜ U+02DC 0xB8 ¸ U+00B8 0xD8 Ø U+00D8 0xF8 ø U+00F8 0x99 ™ U+2122 0xB9 ¹ U+00B9 0xD9 Ù U+00D9 0xF9 ù U+00F9 0x9A NZ 0xBA º U+00BA 0xDA Ú U+00DA 0xFA ú U+00FA 0x9B › U+203A 0xBB » U+00BB 0xDB Û U+00DB 0xFB û U+00FB 0x9C œ U+0153 0xBC ¼ U+00BC 0xDC Ü U+00DC 0xFC ü U+00FC 0x9D NZ 0xBD ½ U+00BD 0xDD Ư U+01AF 0xFD ư U+01B0 0x9E NZ 0xBE ¾ U+00BE 0xDE ◌̃ U+0303 0xFE ₫ U+20AB 0x9F Ÿ U+0178 0xBF ¿ U+00BF 0xDF ß U+00DF 0xFF ÿ U+00FF
Linki zewnętrzne Archiwalna strona producenta o Windows-1258
Kategoria:Strony kodowe Windows