跳至內容

GNUUnifont

出自Taiwan Tongues 台語維基
於 2025年8月22日 (五) 18:39 由 TaiwanTonguesApiRobot留言 | 貢獻 所做的修訂 (從 JSON 檔案批量匯入)

(差異) ←上個修訂 | 已批准修訂 (差異) | 最新修訂 (差異) | 下個修訂→ (差異)

GNU Unifont是一個由 Roman Czyborra 所製作的,自由而且免費的點陣字型,涵蓋矣 Unicode 中的基本多文種平面,使用中型的點陣字型格式。看佇大多數的自由作業系統佮一寡視窗系統當中,如 Linux、XFree 八十六、X . Org Server,佮一寡嵌入式的韌體,如 RockBox。此字型以 GNU 通用公眾授權條款第二版抑是更新釋出,毋過加入一个字型躉入的例外條款(佇檔案中一千七百八十五字型並無構成違反授權條款的條件)。

伊佇兩千十月成做 GNU 軟體包。

狀態

Unicode 的基本多文種的平面涵起了兩百十六=六十五 , 五百三十六个碼位,其中兩千空四十八个是保留予特殊的用途的代理嘿,六千四百个保留予私人的用途,賰的大約五十七 , 零一个碼位會當供分配。其中多數位攏已經分配字形,啊若一寡特殊的碼位無。

截至二空一三年十月   ( 二千空一十三孵十 ),GNU Unifont 就已經完整涵蓋矣 Unicode 六更三版的定義的基本多文種平面。

平面中,中日韓統一表意文字大約有二十 , 無一个,字形是對文泉驛的 Unibit 字形複製過來的(得著授權)。

. hex 字型格式

GNU Unifont 的 . hex 格式定義矣伊的字型大細,闊度八抑十六像素,懸度為十六像素。多數西方字母的寬度定義做八像素,若其他的語言的字母(特別是中日韓文字)通常是十六像素。

unifont . hex 檔案的每一字形攏包含一行。逐行攏包含四位數的 Unicode 十六進位碼位,一个冒號佮點陣字串。八度一个寬度為八像素的字母的位元串有三十二个十六進位的位數,闊度為十六像素的字母的位元串有六十四个十六進位的位數。

一个佇位元字串中'一'的位元對應著一个'開'的像素。像素位元由上下跤,由左到正儲存。

然後字型會轉做 BDF 格式的檔案以在 X 視窗系統上使用。

範例

這是包括一个 ASCII 大寫'A'字型的範例。

` ` ` 四十一 : 一百八十二孵四千兩百四十四分兩千四百二十七 E 四千兩百四十二孵四千兩百四十二孵 ` ` `

第一个數字是十六進位的 Unicode 碼位,範圍對無到 FFFF。十六進位的四十一是十進位的六十五,也就是字母'A'的碼位。透號分隔了點陣字的碼位。佇這个範例中間,字形是八親像素闊,所以位元有三十二个十六進位的位數。

位元串以八个零開始,所以較早是四行是空的(每八位元是二十六進位的數字,啊若闊度為八位元的字形則為每行八个位數)。 位元串嘛以四个零結尾,所以最後兩行嘛是空的。因為按呢,預設的字形會比基線較低二行,大寫的字母懸於基線十行。這是 GNU Unifont 的拉丁字母範例。

Perl 的 hexdraw 指令稿按照上述的一行字形定義產生以下的輸出:

這會當共編輯器內底編輯,閣使用仝款的工具轉換回十六進位的字串。其目標是創造一个中央格式用方便加入新字形。

向量

Luis Alejandro Gonzalez Miranda 寫了指令稿以進行向量化佮使用 FontForge 轉換 BDF 格式(unifont . bdf)至 TrueType 格式。Paul Hardy 調整了遮的指令稿以處理上新的 TrueType 版本的組合字母,親像重音符號等等。

歷史

Roman Czyborra 佇一九九八年創造矣 Unifont 格式,閣較早期的會當追溯至一九九四年。

二空空八年,Luis Alejandro González Miranda 寫共這个字型轉做 TrueType 字型的程式。Paul Hardy 後來修改伊先用支援佇新版 TrueType 中的組合字母。

最後咧,理察 ・ 斯托曼在二空一三年十月接受 Unifont 成做一个 GNU 軟體包。Paul Hardy 是伊的維護者。

參考資料

外部連結

  • GNU 專案檔案庫
  • 佇咧 Unifoundry . com 上的 GNU Unifont 頁面