[問題] 等寬字體不等寬

看板Linux作者 (小小吳)時間9年前 (2015/09/10 18:27), 9年前編輯推噓21(210138)
留言159則, 5人參與, 最新討論串1/1
先上圖, 預期結果對照組: http://i.imgur.com/N13pRdP.png
(稱為 A 系統) 實際結果對照組: http://i.imgur.com/pMDIIIK.png
(稱為 B 系統) A 系統是裝在 B 系統內的虛擬電腦,設定值幾乎和 B 系統一模一樣, 佈景主題與字體設定也一模一樣 但我不解的是... 為何在 B 系統的 Konsole (KDE 的 Terminal) 和 KWrite 會看到不對齊的文字? 用 fc-match 檢查了 Monospace 字體,兩系統都是對應文泉驛等寬微米黑 而嘗試把 KWrite 的字體從 Monospace 改成文泉驛等寬微米黑的話,畫面文字完全不變 改成文泉驛等寬正黑的話,一樣有不對齊的狀況 但改成 Noto Sans Mono CJK TC 則會正常對齊 A 系統曾經一度自動變成像 B 系統那樣文泉驛等寬字體會不等寬, 想重現狀況時,還原成上一個 snapshot 測試卻找不到重現的步驟, 所以現在 A 系統是正常的等寬,B 系統等寬卻不等寬 B 系統是 openSUSE 13.2 (64 位元),KDE 4 桌面 請問有人知道怎麼解決這個等寬問題嗎? Terminal 不等寬用起來很難過 orz (正在考慮乾脆就改成 Noto Sans Mono CJK TC) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.27.103.199 ※ 文章網址: https://www.ptt.cc/bbs/Linux/M.1441880862.A.09E.html

09/10 19:10, , 1F
忘了哪篇有人說這是bug
09/10 19:10, 1F

09/10 19:12, , 2F
09/10 19:12, 2F
呃,這是同一個 bug 嗎? 感覺不太像 另外,你貼的這篇也是我問的 ※ 編輯: willy69wu31 (114.27.103.199), 09/10/2015 19:54:01

09/10 20:18, , 3F
XD沒注意看id 改用noto似乎比較省事
09/10 20:18, 3F
無解的話我會把 Monospace 指定成 Noto Sans Mono CJK TC ※ 編輯: willy69wu31 (114.27.103.199), 09/10/2015 20:50:39

09/10 22:54, , 4F
請問由Ubuntu終端機安裝的fonts-noto-cjk是最新版嗎
09/10 22:54, 4F

09/10 22:54, , 5F
09/10 22:54, 5F

09/10 23:11, , 6F
他寫2015-05-11,難道他還停留在1.002版?
09/10 23:11, 6F
看來應該還停在 1.002 喔 ※ 編輯: willy69wu31 (114.27.103.199), 09/10/2015 23:49:34

09/11 00:02, , 7F
1.004的字型高度有點問題 arch上用1.004的顯示高度異常
09/11 00:02, 7F

09/11 00:03, , 8F
debian上1.002的沒問題
09/11 00:03, 8F

09/11 00:14, , 9F
高度?
09/11 00:14, 9F
高度? (跟著發問 ※ 編輯: willy69wu31 (114.27.103.199), 09/11/2015 00:15:31

09/11 00:39, , 10F
那是在說 hhea ascender descender 參數的問題
09/11 00:39, 10F

09/11 00:39, , 11F
1.48 倍行高
09/11 00:39, 11F

09/11 19:51, , 12F
似乎qt的程式比較會有這問題 issue裡有人說gnome正常
09/11 19:51, 12F
看來 KDE 和 Gnome 各有我不喜歡的點 ==== 另外我發覺文泉驛等寬微米黑本身好像沒有粗體, 我不確定跟這個有沒有關係? 是不是某種粗體模擬或字型 fallback 設定有問題... 雖然擷圖裡面的 KWrite 並沒有出現粗體,不過 Konsole 有 而 Konsole 不對齊的地方多半是因為出現粗體文字 (但 A 系統的粗體在 Konsole 正常) ※ 編輯: willy69wu31 (1.173.215.210), 09/11/2015 20:18:16

09/11 21:03, , 13F
issue裡也提到沒辦法完美配合每種ui 這個要花時間回報+調
09/11 21:03, 13F

09/11 21:07, , 14F
不過 現階段換成思源似乎是比較可接受的方案 畢竟很齊全
09/11 21:07, 14F
後來換成思源卻還是一樣有不對齊問題 (只剩粗體有問題,非粗體正常了)

09/11 21:08, , 15F
行高問題就看能不能接受了
09/11 21:08, 15F

09/12 02:01, , 16F
kde4太醜了,丟掉
09/12 02:01, 16F
我不太喜歡 GTK 系的 DE 外觀

09/12 18:38, , 17F
行高自己抓 source rebuild 應該可以解決啦
09/12 18:38, 17F

09/12 20:46, , 18F
用中文介面的話比較會有行高問題 不過我都是用英文
09/12 20:46, 18F

09/12 20:47, , 19F
比較有問題的地方是用fx+bbsfox開bbs比較明顯
09/12 20:47, 19F
============================================================================== 後來找到部分原因了。 如果在 KDE 的系統設定 > 應用程式外觀裡面,點選左邊的「字型」分頁的話 (點選就會觸發,即使沒有改設定或按套用鈕) 某些條件下會自動寫入資料到下列檔案: ~/.config/fontconfig/fonts.conf 條件不明,我測試有時候它只建了 fontconfig 目錄,卻沒有 fonts.conf 然後這個 fonts.conf 如果沒有 hinting 相關設定的話,會被自動寫進去 在我這個例子裡面 hinting 會被它改成 medium 結果因此導致等寬字型的粗體文字變成無法對齊 而我再測試後發現把 hinting 改回 none 的話粗體就會恢復正常。 算是一個 workaround 總之暫時解決了。 感謝各位 ※ 編輯: willy69wu31 (114.27.100.54), 09/13/2015 20:19:38

09/13 20:53, , 20F
可能沒設定的會給個預設值 我的也會自己寫入.fonts的dir
09/13 20:53, 20F

09/13 21:38, , 21F
其實有cli+gui複數設定方法的還蠻常撞到這種問題
09/13 21:38, 21F

09/13 21:40, , 22F
明明某邊沒設 開另一邊就給了預設值 結果就有預料外情形
09/13 21:40, 22F

09/14 18:20, , 23F
關掉hinting字體真的漂亮很多
09/14 18:20, 23F
因為那一套 hinting 不適合中文,英文的話效果還 ok ※ 編輯: willy69wu31 (114.38.243.21), 09/14/2015 18:51:29

09/14 19:54, , 24F
hintmedium 應該還 OK。
09/14 19:54, 24F

09/14 19:59, , 25F
hintmediem 對小字體的中文 (功能表、視窗標題、按鈕等) 常常會有很糟的效果 對大字體還好

09/14 20:00, , 26F
有辦法中文關掉hinting,英文開啟hinting嗎?
09/14 20:00, 26F

09/14 20:16, , 27F
基本上沒辦法,因為它是針對 render 引擎的動作。
09/14 20:16, 27F

09/14 20:18, , 28F
hinting 的問題,和字型品質有關。FT2 autohint 是固
09/14 20:18, 28F

09/14 20:18, , 29F
的了,剩下的只能靠字型本身的 hint instruction。
09/14 20:18, 29F
還有 91 則推文
還有 4 段內文
09/20 00:17, , 121F
補完計畫在碼的部份是和unicode在pk的。
09/20 00:17, 121F

09/20 00:18, , 122F
其實合成起來很快啦!以我的慢速電腦也不必幾天就合
09/20 00:18, 122F

09/20 00:19, , 123F
起來了。我覺得自由軟體社群,diy的精神漸漸失去,這
09/20 00:19, 123F

09/20 00:19, , 124F
是滿危險的一件事。
09/20 00:19, 124F

09/20 00:21, , 125F
思源的衍生版本很多,他們都是自行動作的。
09/20 00:21, 125F

09/20 00:25, , 126F
文件不是建議 Linux user 用分開的嗎?
09/20 00:25, 126F

09/20 00:29, , 127F
我自己是發現官方發的 otc 不合用就改成 fontconfig +
09/20 00:29, 127F

09/20 00:30, , 128F
s/幾天/幾小時/g
09/20 00:30, 128F

09/20 00:30, , 129F
28 subsets,也有驗證過 pango markup 下 lang tag 有效
09/20 00:30, 129F

09/20 00:32, , 130F
他們會建議分開用,就是因為寫法不同呀!
09/20 00:32, 130F

09/20 00:35, , 131F
有許多軟體,例如TeX/scribus等等,如果字型沒有合成
09/20 00:35, 131F

09/20 00:35, , 132F
變成會多幾道手續來書寫。
09/20 00:35, 132F

09/20 00:36, , 133F
因為字型的使用,不只是給系統本身在顯示上使用的。
09/20 00:36, 133F

09/20 00:38, , 134F
這個其實以前有討論過,只是還沒辦法納入ttf/otf spec
09/20 00:38, 134F

09/20 00:41, , 135F
舉的例子可能不太恰當 只是想表達個人不太適合硬推這個
09/20 00:41, 135F

09/20 00:46, , 136F
不過 有需要的話 自己diy是比較好的選擇 就像那個hhea
09/20 00:46, 136F

09/20 00:57, , 137F
本來異體字,以前有人建議依 lang tag 來選適合的字,
09/20 00:57, 137F

09/20 00:58, , 138F
但ttf/otf spec 當然不會接受,因為會多佔碼位。而
09/20 00:58, 138F

09/20 00:58, , 139F
這些碼位可能會和將來的新字衝突。
09/20 00:58, 139F

09/20 00:59, , 140F
如果要讓教育體系能接受,我覺得這種合成是值得的,
09/20 00:59, 140F

09/20 00:59, , 141F
至少學生只要安裝一種字型,繁體的部份都合教育部
09/20 00:59, 141F

09/20 01:00, , 142F
標準,而且又能直接取用不同的異體字。
09/20 01:00, 142F

09/20 01:00, , 143F
自由軟體在教育場所才是比較能直接推動的地方。
09/20 01:00, 143F

09/20 01:03, , 144F
當然,有利也有弊,像一點直線的辵字部會取不出來。
09/20 01:03, 144F

09/20 01:25, , 145F
教育用的應該要由政府推一個專用的標準比較適合
09/20 01:25, 145F

09/20 01:26, , 146F
印象中教育部是有一套 不過沒用過不便評論
09/20 01:26, 146F

09/20 01:27, , 147F
只是一堆政府網站ie only 就更別說字型這塊了
09/20 01:27, 147F

09/20 01:40, , 148F
教育部跟全字庫同一套
09/20 01:40, 148F

09/20 08:29, , 149F
教育部的那套並不是自由軟體。而且沒有黑體。
09/20 08:29, 149F

09/20 08:29, , 150F
要由教育部來主導的話,他們會優先用微軟的東西吧!
09/20 08:29, 150F

09/20 08:30, , 151F
我現在說的只是多一個選項,並不是要硬推喔!
09/20 08:30, 151F

09/20 08:30, , 152F
其實不說就做的話,現在就合成完成了!XD
09/20 08:30, 152F

09/20 19:43, , 153F
有時候就缺一時的衝動XD
09/20 19:43, 153F

09/20 22:23, , 154F
不過,我發覺我話說得太快了,Fontforge無法處理思源
09/20 22:23, 154F

09/20 22:23, , 155F
字型,因為是他是 CID font wrap 成 otf 的,而
09/20 22:23, 155F

09/20 22:24, , 156F
Fontforge 的原作者已經沒有參與,這部份沒能來得及
09/20 22:24, 156F

09/20 22:24, , 157F
做修正。目前的維護者專心在UI,所以功能沒什麼長進
09/20 22:24, 157F

09/20 22:25, , 158F
要處理的話,要用商用字型軟體來處理。
09/20 22:25, 158F

09/25 14:11, , 159F
payday?
09/25 14:11, 159F
對啊,被發現了 最近忙到沒空回覆,看到你這篇推文害我想回 ※ 編輯: willy69wu31 (111.254.54.160), 09/25/2015 23:12:56
文章代碼(AID): #1LyLiU2U (Linux)
文章代碼(AID): #1LyLiU2U (Linux)