fbpx
Wikipedia

Halfwidth and fullwidth forms

In CJK (Chinese, Japanese, and Korean) computing, graphic characters are traditionally classed into fullwidth (in Taiwan and Hong Kong: 全形; in CJK: 全角) and halfwidth (in Taiwan and Hong Kong: 半形; in CJK: 半角) characters. Unlike monospaced fonts, a halfwidth character occupies half the width of a fullwidth character, hence the name.

A command prompt (cmd.exe) with Korean localisation, showing halfwidth and fullwidth characters

Halfwidth and Fullwidth Forms is also the name of a Unicode block U+FF00–FFEF, provided so that older encodings containing both halfwidth and fullwidth characters can have lossless translation to and from Unicode.

Rationale Edit

 
Characters which appear in both JIS X 0201 (single byte) and JIS X 0208 / JIS X 0213 (double byte) have both a halfwidth and a fullwidth form in Shift JIS.

In the days of text mode computing, Western characters were normally laid out in a grid on the screen, often 80 columns by 24 or 25 lines. Each character was displayed as a small dot matrix, often about 8 pixels wide, and a SBCS (single-byte character set) was generally used to encode characters of Western languages.

For aesthetic reasons and readability, it is preferable for Chinese characters to be approximately square-shaped, therefore twice as wide as these fixed-width SBCS characters. As these were typically encoded in a DBCS (double-byte character set), this also meant that their width on screen in a duospaced font was proportional to their byte length. Some terminals and editing programs could not deal with double-byte characters starting at odd columns, only even ones (some could not even put double-byte and single-byte characters in the same line). So the DBCS sets generally included Roman characters and digits also, for use alongside the CJK characters in the same line.

On the other hand, early Japanese computing used a single-byte code page called JIS X 0201 for katakana. These would be rendered at the same width as the other single-byte characters, making them half-width kana characters rather than normally proportioned kana. Although the JIS X 0201 standard itself did not specify half-width display for katakana, this became the visually distinguishing feature in Shift JIS between the single-byte JIS X 0201 and double-byte JIS X 0208 katakana. Some IBM code pages used a similar treatment for Korean jamo,[1] based on the N-byte Hangul code and its EBCDIC translation.

In Unicode Edit

For compatibility with existing character sets that contained both half- and fullwidth versions of the same character, Unicode allocated a single block at U+FF00–FFEF containing the necessary "alternative width" characters. This includes a fullwidth version of all the ASCII characters and some non-ASCII punctuation such as the Yen sign, halfwidth versions of katakana and hangul, and halfwidth versions of some other symbols such as circles. Only characters needed for lossless round trip to existing character sets were allocated, rather than (for instance) making a fullwidth version of every Latin accented character.

Unicode assigns every code point an "East Asian width" property. This may be:[2]

Unicode character properties based on width
Abbreviation Name Description
W Wide Naturally wide character, e.g. Hiragana.
Na Narrow Naturally narrow character, e.g. ISO Basic Latin alphabet.
F Fullwidth Wide variant with compatibility normalisation to naturally narrow character, e.g. fullwidth Latin script.
H Halfwidth Narrow variant with compatibility normalisation to naturally wide character, e.g. half-width kana. Includes U+20A9 () as an exception.
A Ambiguous Characters included in East Asian DBCS codes but also in European SBCS codes, e.g. Greek alphabet. Duospaced behaviour can consequently vary.
N Neutral Characters which do not appear in East Asian DBCS codes, e.g. Devanagari.

Terminal emulators can use this property to decide whether a character should consume one or two "columns" when figuring out tabs and cursor position.

In OpenType Edit

OpenType has the "fwid", "halt", "hwid", and "vhal" feature tags to be used for providing fullwidth or halfwidth form of a character.[citation needed]

See also Edit

References Edit

  1. ^ "ICU Demonstration - Converter Explorer". demo.icu-project.org. Retrieved 7 May 2018.
  2. ^ Lunde, Ken (2019-01-25). "Unicode® Standard Annex #11: East Asian Width". Unicode Consortium.

External links Edit

  • East Asian Width Unicode Standard Annex #11

halfwidth, fullwidth, forms, unicode, block, halfwidth, fullwidth, forms, unicode, block, chinese, japanese, korean, computing, graphic, characters, traditionally, classed, into, fullwidth, taiwan, hong, kong, 全形, 全角, halfwidth, taiwan, hong, kong, 半形, 半角, cha. For the Unicode block see Halfwidth and Fullwidth Forms Unicode block In CJK Chinese Japanese and Korean computing graphic characters are traditionally classed into fullwidth in Taiwan and Hong Kong 全形 in CJK 全角 and halfwidth in Taiwan and Hong Kong 半形 in CJK 半角 characters Unlike monospaced fonts a halfwidth character occupies half the width of a fullwidth character hence the name A command prompt cmd exe with Korean localisation showing halfwidth and fullwidth charactersHalfwidth and Fullwidth Forms is also the name of a Unicode block U FF00 FFEF provided so that older encodings containing both halfwidth and fullwidth characters can have lossless translation to and from Unicode Contents 1 Rationale 2 In Unicode 3 In OpenType 4 See also 5 References 6 External linksRationale EditThis section needs additional citations for verification Please help improve this article by adding citations to reliable sources in this section Unsourced material may be challenged and removed April 2021 Learn how and when to remove this template message Characters which appear in both JIS X 0201 single byte and JIS X 0208 JIS X 0213 double byte have both a halfwidth and a fullwidth form in Shift JIS In the days of text mode computing Western characters were normally laid out in a grid on the screen often 80 columns by 24 or 25 lines Each character was displayed as a small dot matrix often about 8 pixels wide and a SBCS single byte character set was generally used to encode characters of Western languages For aesthetic reasons and readability it is preferable for Chinese characters to be approximately square shaped therefore twice as wide as these fixed width SBCS characters As these were typically encoded in a DBCS double byte character set this also meant that their width on screen in a duospaced font was proportional to their byte length Some terminals and editing programs could not deal with double byte characters starting at odd columns only even ones some could not even put double byte and single byte characters in the same line So the DBCS sets generally included Roman characters and digits also for use alongside the CJK characters in the same line On the other hand early Japanese computing used a single byte code page called JIS X 0201 for katakana These would be rendered at the same width as the other single byte characters making them half width kana characters rather than normally proportioned kana Although the JIS X 0201 standard itself did not specify half width display for katakana this became the visually distinguishing feature in Shift JIS between the single byte JIS X 0201 and double byte JIS X 0208 katakana Some IBM code pages used a similar treatment for Korean jamo 1 based on the N byte Hangul code and its EBCDIC translation In Unicode EditSee also Halfwidth and Fullwidth Forms Unicode block For compatibility with existing character sets that contained both half and fullwidth versions of the same character Unicode allocated a single block at U FF00 FFEF containing the necessary alternative width characters This includes a fullwidth version of all the ASCII characters and some non ASCII punctuation such as the Yen sign halfwidth versions of katakana and hangul and halfwidth versions of some other symbols such as circles Only characters needed for lossless round trip to existing character sets were allocated rather than for instance making a fullwidth version of every Latin accented character Unicode assigns every code point an East Asian width property This may be 2 Unicode character properties based on width Abbreviation Name DescriptionW Wide Naturally wide character e g Hiragana Na Narrow Naturally narrow character e g ISO Basic Latin alphabet F Fullwidth Wide variant with compatibility normalisation to naturally narrow character e g fullwidth Latin script H Halfwidth Narrow variant with compatibility normalisation to naturally wide character e g half width kana Includes U 20A9 as an exception A Ambiguous Characters included in East Asian DBCS codes but also in European SBCS codes e g Greek alphabet Duospaced behaviour can consequently vary N Neutral Characters which do not appear in East Asian DBCS codes e g Devanagari Terminal emulators can use this property to decide whether a character should consume one or two columns when figuring out tabs and cursor position In OpenType EditOpenType has the fwid halt hwid and vhal feature tags to be used for providing fullwidth or halfwidth form of a character citation needed See also EditEast Asian punctuation Em size full width forms Enclosed Alphanumerics bullet point sequences some appear as fullwidth e g Han unification Hangul Jamo Unicode block Katakana Unicode block Latin script in UnicodeReferences Edit ICU Demonstration Converter Explorer demo icu project org Retrieved 7 May 2018 Lunde Ken 2019 01 25 Unicode Standard Annex 11 East Asian Width Unicode Consortium External links EditEast Asian Width Unicode Standard Annex 11 Retrieved from https en wikipedia org w index php title Halfwidth and fullwidth forms amp oldid 1159855858 Full, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.