Halfwidth and fullwidth forms: Difference between revisions

Content deleted Content added
m See also: fixed dashes using a script
No edit summary
Line 9:
{{Unreferenced section|date=November 2018}}
[[File:Alternative names of JIS X 0213.svg|thumb|Characters 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 [[pixel]]s wide, and a [[SBCS]] (single -byte character set) was generally used to encode characters of westernWestern languages.
 
For a number of practical and aesthetic reasons [[Han character]]s need to be square, approximately 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 length 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,<ref name="ibm933">{{cite web|url=http://demo.icu-project.org/icu-bin/convexp?conv=ibm-933|title=ICU Demonstration - Converter Explorer|author=|date=|website=demo.icu-project.org|accessdate=7 May 2018}}</ref> based on the [[KS C 5601#1974|N-byte Hangul code]] and its [[EBCDIC]] translation.
Line 17:
==In Unicode==
{{see 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&ndash;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 naturally- square 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" [[Unicode character property|property]]. This may be:<ref name="uax11">{{cite web|url=https://unicode.org/reports/tr11/|title=Unicode® Standard Annex #11: East Asian Width|last1=Lunde|first1=Ken|authorlink=Ken Lunde|publisher=[[Unicode Consortium]]|date=2019-01-25}}</ref>
Line 54:
== See also ==
 
* [[CJK]]
* [[Han unification]]
* [[Monospaced font]]
* [[Duospaced font]]
* [[CJK Symbols and Punctuation (Unicode block)|East Asian punctuation]]
* [[Em size]] – full width forms