動作環境
Ubuntu 16.04 LTS
Python 3.5.2
ImageMagick 6.8.9-9 Q16 x86_64 2018-09-28
概要
- 東雲フォント(BDF形式)をBMP形式に変換した
- BMP形式から各文字を切り出す
- 16x16のフォント
実装 v0.1
枠線は2ピクセル。
divide_191112.py
import subprocess as sb
import sys
# on Python 3.5.2
# Ubuntu 16.04 LTS
# cut out 16x16 bitmap fonts
BORDER_WIDTH = 2
INFILE = "shnmk16.bmp"
idx = 0
for lin in range(10):
for col in range(32):
idx = idx + 1
xpos = BORDER_WIDTH + (BORDER_WIDTH + 16) * col
ypos = BORDER_WIDTH + (BORDER_WIDTH + 16) * lin
aform = "convert %s -crop 16x16+%d+%d wrk-%03d.bmp"
acmd = aform % (INFILE, xpos, ypos, idx)
print(acmd)
sb.getoutput(acmd)
wrk-000.bmpのように文字ごとにファイルになる。
これを使ってanimated gifを作成できる。
切り出したファイル
- wrk-148: 数値の始まり
- wrk-158: upper case英字の始まり
- wrk-184: lower case英字の始まり
- wrk-210: ひらがなの始まり
- wrk-293: カタカナの始まり
実装 v0.2
- 16x16を32x32へ
-
imagemagickで画像のリサイズ by @tukiyo3 さん
- 情報感謝です。
-
imagemagickで画像のリサイズ by @tukiyo3 さん
- 白黒反転する
- カメラ写りが悪かったので
- Invert colors with ImageMagick
divide_191112.py
import subprocess as sb
import sys
# on Python 3.5.2
# Ubuntu 16.04 LTS
# cut out 16x16 bitmap fonts
BORDER_WIDTH = 2
INFILE = "shnmk16.bmp"
idx = 0
for lin in range(10):
for col in range(32):
idx = idx + 1
xpos = BORDER_WIDTH + (BORDER_WIDTH + 16) * col
ypos = BORDER_WIDTH + (BORDER_WIDTH + 16) * lin
# aform = "convert %s -crop 16x16+%d+%d wrk-%03d.bmp" # x 1
aform = "convert %s -crop 16x16+%d+%d -resize 32x32 -channel RGB -negate wrk-%03d.bmp" # x2 invert
acmd = aform % (INFILE, xpos, ypos, idx)
print(acmd)
sb.getoutput(acmd)