為什麼在有些軟體環境下中文裡的中圓點(間隔號)是半形的?

時間 2021-05-30 20:22:19

1樓:Oscar Cheng

在Indesgin中設定 「復合字型」時碰到間隔號的問題,只要復合字型中的羅馬字設定了西文字型後,間隔號就變成了半形字元,雖然在「標點」、「符號」兩項設定的都是中文字型。學習了這篇回答之後,似乎明白了問題所在:U+00B7在西文字型中是半形的,而因為系統fallback順序是「西文字型在前,中文字型在後」,所以造成了復合字型中其他標點符號都是中文的全形字符,只有間隔號變成了西文的半形字元。

現在問題來了,怎麼解決在indesign中應用復合字型後的間隔號問題呢?我還不知道怎麼設定系統fallback順序,另外就算自己的系統設定了fallback順序,那麼如果把這個indesign檔案發給別人,在別人的電腦上豈不是還有問題?如何解決呢,請諸位指點一二。

2樓:一絲

@梁海我查了一下:GB/T 15834―2011 標點符號用法電子版4.14.3.5

以月、日為標誌的事件或節日,用漢字數字表示時,只在一、十一和十二月後用間隔號;當直接用阿拉伯數字表示時,月、日之間均用間隔號(半形字元)。

示例 2:「一二·九」運動

示例 3:「3·15」消費者權益日

5.1.7 間隔號標在需要隔開的專案之間,佔半個字位置,上下居中,不出現在一行之首。

知乎有審核,所以我去掉了一些敏感詞。

3樓:梁海

@錢爭予和 @Chen Yijun 說得都沒錯。再補充一些:

首先一定要搞清楚我們說「中圓點」、「間隔號」時到底說的是什麼字元,很多問題其實出在字元上:大陸這邊的標準是「·」(U+00B7 MIDDLE DOT),這是乙個不常用但也不算罕見的西文標點符號的字元(有時能看到拉丁語格言用它來分詞)。簡體中文本型把它借來用了,並且做成乙個漢字的寬度。

簡體中文輸入法也全都輸出這個字元。正體中文本型通常不把它做成一字寬。

許多港台用於拿「.」(U+FF0E FULLWIDTH FULL STOP)當間隔號用。這是語義不合適的 hacking。U+FF0E 是 ASCII 字元「.

」(U+002E FULL STOP,即我們日常使用的西文句點)對應的全形字符,本來應該用作中文科技文獻的句點。而港台以標點在字框內居中為準,於是乙個全字寬的西文句點就成了在字框內居中的圓點,於是就被拿來當間隔號用了。

Windows 裡的港台字型常常還把西文標點「」(U+2027 HYPHENATION POINT)當間隔號用。但這個做法不太通用,至少 Mac OS X 裡的港台字型不支援。U+2027 本來是字典裡分音節用的點,從語義上也不應該用作中文的間隔號。

日文字型都支援「」(U+30FB KATAKANA MIDDLE DOT),它是日文裡用片假名轉寫外文人名時用的間隔號。我個人其實最希望中文世界能推廣使用它……但至今很多中文字型都不支援它,必須依賴系統 fallback 到日文字型才能顯示出來。

當然,還有人直接偷懶用西文句點「.」(U+002E FULL STOP)甚至連字元「-」(U+002D HYPHEN-MINUS)來替代專門的間隔號字元。

港台常用的 FULLWIDTH FULL STOP 和 HYPHENATION POINT 在不同字型中的樣式差別極大(比如前者在大陸字型裡位於一字空白的左下角,在港台字型裡常位於正中),遇到不同的字型時就很容易出相容問題。

大陸通用的 MIDDLE DOT 在中西文本型裡都是居中的,區別主要在於空格的寬度。

所謂「全/半形」(或港台術語「全/半形」)是用來區分字元(character)的,但具體某個字元顯示成什麼樣的字形(glyph)主要是由字型(font)控制的。

人們常常說「全形間隔號」、「全形彎引號」,這不恰當,而且很誤導。「·」(U+00B7 MIDDLE DOT)和「「 『 』 」」都不存在全形版本,只不過有的字型中把它們做成和漢字一樣寬的。

所以也不存在「U+00B7 是半形的」這種問題。事實上只是它有時因中文字型而顯示為一字寬,有時因西文字型而顯示為大概半字寬。

注意:微軟雅黑等微軟 ClearType 新字型都不再把 U+00B7 做成一字寬了,不知是為了和西文字型相容還是什麼。另外聽說 GB/T 15834-2011 裡好像對間隔號的樣式也有調整,我還沒查證。

參考圖,展現 U+00B7 MIDDLE DOT、U+2027 HYPHENATION POINT、U+FF0E FULLWIDTH FULL STOP 和 U+30FB KATAKANA MIDDLE DOT 受作業系統主要介面字型的支援情況:

4樓:Chen Yijun

有些標點在Unicode中並未分成半、全形二個字元,間隔號和大陸標準的彎引號都與西文標點共用(有些西文字型還包含中文篇名號)。如果設計師或系統、瀏覽器採用「西文字型在前、中文字型在後」的fallback順序,就會導致這幾種標點變成半形的樣子。

在CSS3中,可以用@font-family的「unicode-range」屬性搭配中文字型來解決這個問題。最近版本的Webkit和IE8都已經支援。

5樓:錢爭予

一般來說,字型 fallback 順序列表中,西文字型在前時,會出現問題中所說的「半形」情況。常見西文字型裡,大多包含了「·」(U+00B7)這個 glyph。

為什麼有些外幣在中文裡叫作 元 有些叫作 幣 還有些叫作 銖 ?

擎天 應該是一種約定好的標準的翻譯吧,就像官方翻譯為川普有人依然叫川普,翻譯信達雅,尊重各國歷史文化的基礎上進行翻譯。顯示出了我們的歷史文化博大精深,體現文化深度,皇帝稱朕,王稱寡人孤,包含了等級關係的意思。李白字太白號青蓮居士,詩仙嫡仙人,我們知道這都是李白。我們注重人文關係,所以稱謂多。舅舅是舅...

為什麼有些人在說英文時會把語句裡的中文 人名地名 刻意帶上普通話的音調。?

端木弗貢 為什麼不?中文的專名本來就帶聲調啊。我用本音說本名天經地義,你學不像,我又沒求全責備強你所難,你反過來還要求我放棄本名本音,改用訛音,那不就等於逼人改名嗎!你也太牛了,還有天理沒有?按名從主人的原則,只有兩種情況下可以不用本音讀本名。一是你發不出那個音來,只得依樣葫蘆 二是那個專名已經有了...

為什麼有些地方的手術室環境光是亮的,有些是暗的?這裡是否因為國家地區的不同而不同?

風起秣陵 其實這與內窺鏡的發展有關係。早期的標清腔鏡清晰度低,在螢幕上的亮度和對比度很差。為了看清內窺鏡的資訊,需要關掉環境照明來提公升對比度。有點類似電影院關燈看電影的效果。從那個時代過來的醫生會習慣關燈的操作,習慣成自然。這也是為什麼歐美醫院不少也有類似要求的原因。習慣變成了操作規程。但後來隨著...