-@@------------------------------------------@@------@@--------------@@-
-@@------------------------------------------@@------@@--@@----------@@-
-@@------------------------------------------@@----------@@----------@@-
-@@------@@@@@@@@@----@@@@---@@@@@----@@@@---@@@@@---@@-@@@@---------@@-
-@@------@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@----------@@-
-@@------@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@----------@@-
-@@------@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@----------@@-
-@@------@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@----------@@-
-@@------@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@--@@------@@-
-@@------@@--@@--@@---@@@@---@@--@@---@@@@---@@@@@---@@---@@-@@------@@-
-@@------------------------------------------------------------------@@-
-@@------------------------------------------------------------------@@-
-@@------------------------------------------------------------------@@-
monobit工具可讓您修改位圖字體並在幾種格式之間進行轉換。
monobit的本地格式是yaff ,一種類似於Roman Czyborra的hexdraw ,Simon Tatham的mkwinfont和John Elliott的psftools人類友好,基於文本的視覺格式。詳細信息以yaff字體文件格式規範給出。
MonoBit需要Python 3.9或更高。通過pip install monobit安裝。某些格式或功能需要其他軟件包;有關列表,請參見下面的依賴項。如果您使用pip ,將它們自動安裝。
monobit可以用作Python軟件包或命令行工具。
以下是如何使用轉換實用程序的一些示例。
monobit-convert --help
顯示用法摘要和命令行選項
monobit-convert --help load --format=raw
顯示用法摘要和其他格式特定的命令行選項,用於從RAW二進制轉換。
monobit-convert fixedsys.fon
從“魔術字節”或後綴(此處是Windows字體)中識別源文件格式,並以yaff格式寫入標準輸出字體。
monobit-convert roman.bdf to --format=unifont
從BDF文件中讀取字體,並將其寫入標準輸出為unifont hex。
monobit-convert fixed.psf to fixed.png
以PSF格式讀取字體,並以PNG格式寫入磁盤。
monobit-convert --format=c to --format=bdf
從標準輸入中讀取字體為C-Source編碼的二進制,並將標準輸出寫入BDF。
轉換器透明地讀取並寫入gz , bz2或xz編制的字體文件,並可以讀取和寫zip和tar檔案。某些字體格式包含多個字體,而另一些字體只能包含一種字體;如果需要,轉換器將將多個文件寫入目錄或存檔。
保存之前,也可以在字體上應用各種轉換。檢查monobit-convert --help使用。
橫幅實用程序在給定字體中將文本呈現為標準輸出。這類似於System-V和BSD Unixes中包含的古代banner命令。
例如,此README頂部的橫幅是由
me@bandit:~$ monobit-banner '| monobit. |' --font=VGASYS.FON
monobit-banner有許多渲染選項 - 您可以選擇字體,更改“墨水”和“紙”字符,設置邊距,比例文本,然後旋轉四分之一回合。檢查monobit-banner --help使用。
| 格式 | 簡短名稱 | 典型的擴展 | 讀 | 寫 | 類型 | 特徵 |
|---|---|---|---|---|---|---|
| Xerox Alto轉換 | alto | .al | ✓ | 二進制 | - | |
| Amiga字體內容 | amiga-fc | .font | ✓ | ✓ | 二進制 | m;參見amiga |
| Amiga字體 | amiga | ✓ | ✓ | 二進制 | OCG | |
| X11/Adobe BDF | bdf | .bdf | ✓ | ✓ | 編碼 | U SB MB VOG |
| Beos位圖字體 | beos | ✓ | ✓ | 二進制 | UOG | |
| Xerox Alto Bitblt | bitblt | .strike .ks | ✓ | 二進制 | o | |
| Angel Code Bmfont [P] | bmfont | .fnt .xml .json +圖像 | ✓ | ✓ | 圖像 | MU SB MB OKGC |
| fontrix(PC),pcpaint,Grasp,Chiwriter | chiwriter | .set .[specx]ft | ✓ | 二進制 | - | |
| 控制台 / vfontas | consoleet | .txt | ✓ | ✓ | 視覺的 | - |
| 雛菊點 | daisy | .nlq .nl2 .nl3 .nl4 | ✓ | 二進制 | - | |
| dosstart! | dosstart | .dsf | ✓ | ✓ | 編碼 | - |
| Edwin位圖字體 | edwin | .fnt | ✓ | ✓ | 編碼 | - |
| Figlet字體 | figlet | .flf | ✓ | ✓ | 視覺的 | (3) |
| FZX字體 | fzx | .fzx | ✓ | ✓ | 二進制 | o |
| OS/2 GPI資源 | gpi | .fnt | ✓ | 二進制 | SB O(MB K) | |
| Atari GDOS /寶石 | gdos | .fnt .gft .vga | ✓ | ✓ | 二進制 | o |
| GEOS字體文件(CVT) | geos | .cvt | ✓ | ✓ | 二進制 | m;見vlir |
| Adafruit GFX字體 | gfxfont | .h | ✓ | ✓ | 編碼 | o |
| hexdraw | hexdraw | .draw | ✓ | ✓ | 視覺的 | 你 |
| HP PCL軟字體 | hppcl | .sft .sfp .sfl | ✓ | ✓ | Esc鍵 | SB MBO。 |
| 蘋果IIGS字體 | iigs | .fon | ✓ | ✓ | 二進制 | 見nfnt |
| 位圖圖像[P] | image | .png .gif .bmp | ✓ | ✓ | 圖像 | - |
| 一組位圖圖像[P] | imageset | .png .gif .bmp | ✓ | ✓ | 圖像 | - |
| 麗莎字體庫 | lisa | .bin | ✓ | 二進制 | m;見nfnt | |
| MacOS字體 | mac | .dfont .suit | ✓ | ✓ | 二進制 | MK;見nfnt |
| MouseGraphics工具包 | mgtk | ✓ | 二進制 | - | ||
| Mkwinfont文本格式 | mkwinfont | .fd | ✓ | ✓ | 視覺的 | SB |
| Windows或OS/2字體 | mzfon | .fon .exe .dll | ✓ | (1) | 二進制 | m;看到win , gpi |
| 裸露的資源 | nfnt | .f | ✓ | ✓ | 二進制 | SB OG(C) |
| 棕櫚OS字體(V1/NFNT) | palm | .pdb | ✓ | 二進制 | m;見nfnt | |
| Palm OS PRC(V1/NFNT) | palm-prc | .prc | ✓ | 二進制 | m;見nfnt | |
| X11便攜式編譯格式 | pcf | .pcf | ✓ | ✓ | 二進制 | U SB MB O |
| PC/GEOS v2.0+ | pcgeos | .fnt | ✓ | ✓ | 二進制 | O(MB K) |
| Pilfont [P] | pilfont | .pil + .pbm | ✓ | ✓ | 圖像 | o |
| Tex Pkfont | pkfont | .pk | ✓ | 二進制 | o | |
| Adobe預製格式 | prebuilt | .bepf .lepf | ✓ | 二進制 | g(v) | |
| Xerox Alto Prepress | prepress | .ac | ✓ | 二進制 | o | |
| 印刷店 | printshop | .pnf | ✓ | 二進制 | - | |
| Riscos X90Y45格式 | riscos-xy | ✓ | 二進制 | OG | ||
| Riscos新格式 | riscos | ✓ | 二進制 | OG | ||
| signum! 2 | signum | .e24 .p9 .p24 .l30 | ✓ | 二進制 | - | |
| Sfont | sfont | ✓ | ✓ | 圖像 | GC | |
| SFNT嵌入式位圖 | sfnt | .otb .ttf .otf [f] [**] | ✓ | (2) | 二進制 | M US SB MB OKVG(C) |
| SFNT收集 | ttcf | .otc .ttc [f] [**] | ✓ | (2) | 二進制 | M US SB MB OKVG(C) |
| Vfont | vfont | ✓ | ✓ | 二進制 | o | |
| 裸露的地理字體記錄 | vlir | ✓ | ✓ | 二進制 | o | |
| Windows FNT資源 | win | .fnt | ✓ | ✓ | 二進制 | SB |
| Yaff Monobit | yaff | .yaff | ✓ | ✓ | 視覺的 | m美國SB MB OKVGC |
[P]需要PIL
[F]需要Fonttools
(1)僅具有FNT資源的16位Windows NE容器
(2)僅位圖(OTB)
(3)有限的讀取功能:不支持ASCII-ART,這是Figlet的核心特徵
M多font容器
U Unicode
美國Unicode,多編碼點序列
SB單字節字符集
MB多字節字符集
o重疊的字形k kerning
v垂直指標
G灰度字體
C顏色字體(不受monobit支持)
如果縮寫是括號的,則格式支持這一點,但沒有實現。
| 格式 | 簡短名稱 | 典型的擴展 | 讀 | 寫 | 類型 | 細胞 | 特徵 |
|---|---|---|---|---|---|---|---|
| 64c | 64c | .64c | ✓ | ✓ | 二進制 | 8x8 | - |
| +3DOS | plus3dos | ✓ | ✓ | 二進制 | 8x8 | - | |
| BBC軟字體 | bbc | ✓ | ✓ | Esc鍵 | 8x8 | - | |
| 編碼信息 | cpi | .cpi | ✓ | ✓ | 二進制 | 8xn | M SB |
| 達申 | dashen | .pft | ✓ | 二進制 | 任何 | - | |
| DEC DRCS軟字體 | dec | ✓ | ✓ | Esc鍵 | > 4xn | - | |
| Halo博士 /天才博士 | drhalo | .fon | ✓ | 二進制 | 任何 | - | |
| fontx2 | fontx | .fnt | ✓ | ✓ | 二進制 | 任何 | MB |
| Fontedit | fontedit | .com | ✓ | 二進制 | 8xn | - | |
| 牽引力 | frapt | .com | ✓ | 二進制 | 8xn | - | |
| Fontraption TSR | frapt-tsr | .com | ✓ | 二進制 | 8xn | - | |
| 佩特,掌握舊格式 | grasp | .set .fnt | ✓ | ✓ | 二進制 | 任何 | - |
| Hanzi位圖字體 | hbf | .hbf +原始二進制 | ✓ | ✓ | 二進制 | 任何 | SB MB |
| gnu unifont | unifont | .hex | ✓ | ✓ | 編碼 | 8x16(嚴格)8xn <= 32(ext) | MC U(嚴格)MC US(EXT) |
| 裸照 | kbd | .cp | ✓ | ✓ | 二進制 | 8xn | SB |
| Letafont Loader | letafont | .com | ✓ | 二進制 | 8x8 | - | |
| Rexxcom字體躁狂症 | mania | .com | ✓ | 二進制 | 8xn | - | |
| Netbsd WSfont C標題 | netbsd | .h | ✓ | ✓ | 編碼 | 任何 | M SB |
| Optiks PCR字體 | pcr | .pcr | ✓ | ✓ | 二進制 | 8xn | - |
| PC屏幕字體 | psf | .psf .psfu | ✓ | ✓ | 二進制 | 任何(v2)8xn(v1) | 我們 |
| PSF2AM PSFCOM | psfcom | .com | ✓ | 二進制 | 8x8,8x16 | - | |
| PSF2TXT | psf2txt | .txt | ✓ | ✓ | 視覺的 | 任何 | 我們 |
| 原始二進制 | raw | .fnt .rom [*] | ✓ | ✓ | 二進制 | - | - |
| UDG加載程序 | udg | .com | ✓ | 二進制 | 8x8 | - | |
| FreeBSD控制台字體 | vtfont | .fnt | ✓ | ✓ | 二進制 | 任何 | MC U |
| 大力神寫! | writeon | .wof | ✓ | ✓ | 二進制 | 8x14倍數 | - |
| Netbsd WSfont二進制 | wsfont | .wsf | ✓ | ✓ | 二進制 | 任何 | SB |
| WYSE-60軟字體 | wyse | ✓ | ✓ | Esc鍵 | 8x16 | - | |
| XBIN字體部分 | xbin | .xb | ✓ | ✓ | 二進制 | 8x <= 32 | - |
| Zapfont(舊格式) | zapfont | ,1bd | ✓ | ✓ | 二進制 | 任何 | - |
| Zapredraw UCS | zapredraw | ,1bd | ✓ | ✓ | 二進制 | 任何 | 你 |
MC多細胞字形
這些格式輸出一張字形的表。 PDF,文本和塊圖僅寫入,可以通過image讀取器讀取圖像圖。
| 格式 | 簡短名稱 | 讀 | 寫 |
|---|---|---|---|
| 文字 | chart | ✓ | |
| 塊元素 | blocks | ✓ | |
| ANSI顏色 | shades | ✓ | |
| 圖像[P] | image | ✓ | ✓ |
| PDF [R] | pdf | ✓ |
[P]需要PIL
[R]需要ReportLab
灰度和顏色支持是實驗性的。 Yaff格式的擴展可以儲存每個像素最多8位(256顏色或灰色水平)的字形。
中風字體支持是實驗性的。中風字體是可擴展字體定義為線段的字體。它們與現代字體有根本不同,因為它們定義了單筆觸,而現代字體則定義了要填充墨水的輪廓。此外,目前支持的字體僅由直線段組成。
| 格式 | 簡短名稱 | 典型的擴展 | 讀 | 寫 |
|---|---|---|---|---|
| Yaff Monobit | yaff | .yaff | ✓ | ✓ |
| SVG字體 | svg | .svg | ✓ | ✓ |
| Windows資源 | win | .fnt | ✓ | ✓ |
| Windows字體 | fon | .fon | ✓ | ✓(NE) |
| Borland圖形接口 | borland | .chr | ✓ | ✓ |
| 好時字體(Jim Hurt) | hurt | .jhf | ✓ | |
| dosstart | dosstart | .dsf | ✓ | |
| gimms | gimms | .bin | ✓ |
monobit將從許多常見的容器,檔案,壓縮和編碼格式中重新瀏覽和提取字體文件:
| 格式 | 姓名 | 典型的擴展 | 讀 | 寫 |
|---|---|---|---|---|
| pkzip/winzip | zip | .zip | ✓ | ✓ |
| gnu tar | tar | .tar .tgz | ✓ | ✓ |
| rar [a] | rar | .rar | ✓ | |
| 7-zip [a] | 7zip | .7z | ✓ | ✓ |
| MS機櫃[A] | cabinet | .cab | ✓ | |
| lharc/lha/lzh [a] | lharc | .lha .lzh | ✓ | |
| ACE [C] | ace | .ace | ✓ | |
| ISO 9660 [A] | iso9660 | .iso | ✓ | ✓ |
| 沃克[a] | warc | .warc | ✓ | ✓ |
| CPIO [A] | cpio | .cpio | ✓ | ✓ |
| pax [a] | pax | .pax | ✓ | ✓ |
| xar [a] | xar | .xar | ✓ | ✓ |
| AR [A] | ar | .ar | ✓ | ✓ |
| gzip | gzip | .gz | ✓ | ✓ |
| BZIP2 | bzip2 | .bz2 | ✓ | ✓ |
| xz/lzma | lzma | .xz .lzma | ✓ | ✓ |
| 壓縮[z] | compress | .Z | ✓ | ✓ |
| 蘋果 | apple1 | .as | ✓ | |
| appleduble | apple2 | .adf .rsrc | ✓ | |
| Macbinary | macbin | .bin | ✓ | |
| Binhex 4.0 | binhex | .hqx | ✓ | |
| Binscii | binscii | .bsc .bsq | ✓ | |
| 英特爾十六進制 | intel | .ihex .ihx | ✓ | ✓ |
| 基礎64 | base64 | ✓ | ✓ | |
| 引用打印機 | quopri | ✓ | ✓ | |
| UUENCODE | uuencode | ✓ | ✓ | |
| Yencode [Y] | yenc | ✓ | ✓ | |
| MIME多部分電子郵件 | email | .eml .msg | ✓ | ✓ |
| C或C ++編碼二進制 | c | .c .cpp .cc .h | ✓ | ✓ |
| JSON編碼二進制 | json | .json | ✓ | ✓ |
| Python編碼二進制 | python | .py | ✓ | ✓ |
| Pascal編碼二進制 | pascal | .pas | ✓ | ✓ |
| 基本編碼二進制 | basic | .bas | ✓ | ✓ |
[a]需要libarchive
[c]需要acefile
[y]需要python3-yenc
[z]需要ncompress
請注意,其中許多目前都需要將完整的存檔讀取為內存,EG ISO9660或WARC文件可能不可行,而WARC文件可以容納整個文件系統。
這是舊平台上使用的最常見格式,通常帶有無用的後綴.fnt 。由於沒有元數據,因此您可以指定字符細胞大小。最常見和默認的大小為8x8(CGA和許多8位平台),其次是8x16(VGA)和8x14(EGA)。
.f08 , .ch8 , .88 , .chr , .udg等。.f14或.814 。.f16 ,warp 9 .fnt或degas Elite .fnt.car文件是16x16原始文件。.fnt文件是原始的二進製文件,具有4096x8像素位圖式託管512 8x8字形,並排。提取-strike-width=512 。檢查文件大小也很有用。原始文件通常保存96(ASCII不包括控件),128(ASCII),256或其倍數。因此,公共文件大小為:
| 8x8 | 8x14 | 8x16 | |
|---|---|---|---|
| 96 | 768 | 1344 | 1536年 |
| 128 | 1024 | 1792年 | 2048 |
| 256 | 2048 | 3584 | 4096 |
| 512 | 4096 | 7168 | 8192 |
如果您身份不明的字體文件具有這些尺寸之一,則可能是一個原始的二進製文件。
monobit可以提取嵌入TrueType和Opentype字體文件中的位圖。應該記住的是,這些主要是作為可擴展格式的,並且只有異常嵌入的位圖來改善低分辨率顯示器的渲染。
.ttf , .otf , .dfont等的絕大多數文件根本不包含位圖。即使對於具有像素化外觀的字體,也是如此。要轉換這些,您首先需要將它們進行柵格化,而monobit不會做到這一點。下面鏈接的其他一些字體工具確實具有光柵功能。
monobit可以通過實驗輸出Opentype位圖( .otb )文件,這是Linux桌面支持的僅位圖文件格式。
一些格式需要
Pillow )渲染器還採用
幾乎所有都可以通過PIP安裝:
pip install Pillow reportlab fonttools uniseg python-bidi arabic-reshaper libarchive-c ncompress acefile
該軟件包python3-yenc可在https://github.com/oe-mirrors/python3-yenc以及一些Linux發行版中獲得。沒有這些軟件包,可能無法提供某些功能。
monobit和yaff規範是2019--2024 Rob Hagemans版權,並根據MIT許可發布。
monobit包含:
mkwinfont版權所有2001 Simon Tatham。版權所有。dewinfont版權所有2001,2017 Simon Tatham。版權所有。請參閱windows和os2子包中的通知以及mac/fond.py模塊,以獲取許可和更多信息。
tests/fonts中的字體文件受其自身許可,其中一些更具限制性。這些是用於測試和開發的文件,未包含在包裝分佈中。請參閱tests/fonts/README.md和單個文件中包含的通知。
如果沒有記錄,反向工程,實施和保存字體格式和文件的人,則不存在monobit 。
您可以使用(或代替) monobit使用的其他位圖字體工具包括:
gbdfed