簡體   English   中英

Java:如何在純文本中對齊 UTF 雜項符號

[英]Java: how to align UTF Miscellaneous Symbols in plain text

我正在用 Java 創建一個基於終端的草稿應用程序,我想使用 UTF-8 中雜項符號中的實際草稿字符。 但是,它們似乎與我終端中的標准拉丁 1 (ASCII) 字符不太匹配:

    +---+---+---+---+---+---+---+---+---+---+
 0  |   | ⛂ |   | ⛂ |   | ⛂ |   | ⛂ |   | ⛂ |
    +---+---+---+---+---+---+---+---+---+---+
 1  | ⛂ |   | ⛂ |   | ⛂ |   | ⛂ |   | ⛂ |   |
    +---+---+---+---+---+---+---+---+---+---+
...

 9  | ⛀ |   | ⛀ |   | ⛀ |   | ⛀ |   | ⛀ |   |
    +---+---+---+---+---+---+---+---+---+---+

我意識到這與渲染的特定字體有很大關系,但是有沒有辦法以垂直條以任何字體對齊的方式對齊這些字體?

那挺好的。 您可以在終端上使用等寬字符來正確匹配任何打印的字符。 例如,這是新的快遞

在此處輸入圖片說明

與更廣泛使用的等寬字體不同,例如Courier New不能正確等寬某些特殊字符, JuliaMono 可以滿足您的需求

JuliaMono 是一種等寬字體,專為需要大量專業和技術 Unicode 字符的編程和其他文本編輯環境而設計。 它旨在作為一項實驗,在 2020 年葡萄牙里斯本 JuliaCon 會議上展示。

JuliaMono 是:

 free distributed with a liberal licence suitable for scientific and technical programming as well as for general purpose hacking full of Unicode goodness easy to use, simple, unquirky, friendly, and approachable available for MacOS, Unix, and Windows

您可以從 GitHub 下載 zip 文件 下載解壓后,有16種字體(如JuliaMono-LightItalic.ttfJuliaMono-ExtraBoldItalic.ttf等)可供選擇安裝。

我剛剛安裝了JuliaMono-Regular.ttf ,然后在 Windows 記事本中選擇它並粘貼到您的示例數據中。 等距效果很好; Unicode 的雜項符號以與 ASCII 字符(例如豎線)相同的寬度呈現。 這是一個屏幕截圖:

Julia Mono 的使用

另一點:您沒有提到您的環境,但是如果您使用的是 Windows 並且您從命令行運行您的應用程序,您可能還需要設置您的代碼頁。 請注意,在下面的屏幕截圖中,我的默認代碼頁是 437,它無法呈現Miscellaneous Symbols 要解決這個問題,以及將您的字體設置為JuliaMono 的某些變體,還要確保使用chcp 65001將您的代碼頁設置為 UTF-8:

命令行

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM