热门问题
时间线
聊天
视角
全形和半形
来自维基百科,自由的百科全书
Remove ads
全形和半形是文字的兩種顯示形式,「全形」指文字字身長寬比為一比一的正方形,而「半形」為寬度為全形一半的文字。現在這兩個詞通常用來指代電腦中顯示的文字。

意義和用法
在傳統的字型排印學中,文字字身長寬比為1比1的正方形金屬鉛字原本稱作「全身」,而寬度只有一半的稱為「半身」。另外對於小於一個「全身」的各種鉛空稱為「分空」,通常稱為「二分空」(注意不是「半身」)「三分空」「四分空」「六分空」等等。
「半角/全角」源於日文,其中「角」是「方塊」的意思,「全角/半角」在日文里即是原本「正方形/半個正方形大小文字」的本意,與西文字型排印學中Em和En單位含義相同。
而中文裡的「角」雖然有「角度」「角落」等含義,卻沒有「方塊」的意思,中文在字型排印時不說「全角/半角」而說「全身/半身」[來源請求]。中文裡說「半角/全角」是電腦文字編碼技術引入時直接借用了日文的做法[1]。
而目前對於電腦上的文字稱作「全角字」「全形字」和「半角字」「半形字」的指代非常混亂。
「全角字」「全形字」可能是指:
- 用兩個位元組儲存的字元
- ASCII(所謂半形拉丁字母、符號及阿拉伯數字)以外所有的字元
- 顯示上字身寬度與字型高度相等(即字形外框為正方形)的字形
「半角字」「半形字」時可能指:
- 用單位元組儲存的字元(可能包括片假名)
- ASCII 字元即拉丁字母、數字和常見符號[註 1]
- 顯示上字身寬度為字型高度一半的字形
為了避免混亂,在使用「字寬」的本意時,可以使用從英文倒翻譯回中文的「全寬/半寬」(fullwidth / halfwidth)。
Remove ads
歷史
在早期的電腦中,英語或拉丁字母語言使用的系統,每一個字母或符號,都是使用一位元組的空間(一位元組由8位元組成,共256個編碼空間)來儲存;而漢語、日語及韓語文字,由於數量大大超過256個,故慣常使用兩位元組來儲存一個字元。所以這原本是編碼層面的「單位元組」「雙位元組」的問題。
當時使用等寬字型(如DOS、部分文字編輯器等)時,字型也就順應這種編碼形式,將中日韓文字的寬度繪製成拉丁字母和數字的兩倍,這樣字元的編碼儲存和顯示寬度可以一一對應起來,「單位元組」文字顯示成「半寬」,「雙位元組」文字顯示成「全寬」。因此當時的使用者就開始習慣稱中、日、韓等文字為「全形字元」,而稱拉丁字母或數字為「半形字元」。
但是,後來電腦的文字編碼技術已經發生很大變化,儲存一個字元可能用一個、兩個、三個或者四個位元組(如UTF-8)。一個英文字元即使顯示為半寬,依照不同的編碼方式,並不一定是用一個位元組儲存;而日文的片假名也不一定是雙位元組,也可能用一個位元組儲存(即「半形片假名」)。因此,現在字元編碼儲存和字元顯示寬度的已經沒有一一對應關係。但是由於字元編碼和字形寬度曾經的對應關係,很多使用者一直習慣性地使用「全形/半形」詞彙。
Remove ads
Unicode 裏的 East_Asian_Width 特性
Unicode 標準的附件11 (UAX#11) 中以資訊性附件 (informative) 的形式,定義了東亞文字的字寬 East_Asian_Width 特性[2]。
半形字元與全形字元的比較
Remove ads
Remove ads
Remove ads
Remove ads
OpenType
OpenType字型格式里定義了fwid
、halt
、hwid
和vhal
等GSUB
特性,可以為同樣一個編碼(碼位)的字元供替換成不同的字形(顯示形式)。
參見
- CJK
- 半形及全形字元 (Unicode區段)
- 半形假名
- 等寬字型
- Em尺寸——全形的實現形式
註釋
參考資料
外部連結
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads