大致流程是把字體檔案匯出為圖片格式,在繪圖軟體裡畫好新的風格,再批次的方式匯入並更新到字型檔裡。
詳細步驟:
- 1:建立空白字型檔或選擇一個舊的 FontForge 專案。
- 2:從思源黑體(或其他字體)複製要模仿的文字到 我們的FontForge 專案裡。
- 3:我們的FontForge 專案字型轉成成圖片。
- 4:圖片轉成 .psd 格式。
- 5:在繪圖軟體裡開啟 .psd 畫上我們新的風格。
- 6:文字圖片.psd 轉成 .bmp 格式。
- 7:文字圖片.bmp 格式轉成 .svg格式。
- 8:批次的方式匯入文字圖片並更新到字型檔裡。
Youtube 影片:
https://youtu.be/xSAN43F3wwI
完整的指令如下:
copy exist glyph to new glyph.
export output_string=1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
~/Documents/sh/copy_selected_out.py --input ./swei.sfdir --output VitaGothicCjkTc-Regular.sfdir --string $output_string
build
fontforge ~/Documents/sh/generate.py --input VitaGothicCjkTc-Regular.sfdir \
--output vita.ttf
font to bmp.
cd ~/Documents/vita-gothic/
mkdir -p ~/Documents/vita-gothic/bmp
rm -rf ~/Documents/vita-gothic/bmp/*.png
export output_string=1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
~/Documents/sh/draw_char.py \
--font vita.ttf \
--output ~/Documents/vita-gothic/bmp/ \
--filename_pattern "%s.png" \
--string $output_string \
--canvas_size=1300 \
--y_offset=-270
change color to red
find ~/Documents/vita-gothic/bmp/*.png -exec ~/Documents/sh/change_color.py --input {} \;
add layers to to psd
alpha + red + white 3 layers.
find ~/Documents/vita-gothic/bmp/*.png -exec magick ~/Documents/vita-gothic/prepare/white.png ~/Documents/vita-gothic/prepare/white.png {} ~/Documents/vita-gothic/prepare/alpha.png {}.psd \;
move .psd to psd folder
mkdir -p ~/Documents/vita-gothic/psd/
find ~/Documents/vita-gothic/bmp/*.psd -exec mv {} ~/Documents/vita-gothic/psd/ \;
.psd to .bmp.
find ~/Documents/vita-gothic/psd/*.psd \
-exec bash -c 'magick find ~/Documents/vita-gothic/psd/*.psd \
-exec bash -c 'magick ${0} -background white -flatten ${0/.psd/.bmp}' {} \;
-background white -flatten ${0/.psd/.bmp}' {} \;
move .bmp to svg folder
mkdir -p ~/Documents/vita-gothic/svg/
find ~/Documents/vita-gothic/psd/*.bmp -exec mv {} ~/Documents/vita-gothic/svg/ \;
convert .bmp to .svg format
find ~/Documents/vita-gothic/svg/*.bmp -exec potrace -b svg -u 50 {} -o {}.svg \;
import to font.
fontforge ~/Documents/sh/import_svg.py \
--input ~/Documents/vita-gothic/VitaGothicCjkTc-Regular.sfdir \
--svg_path ~/Documents/vita-gothic/svg/ \
--filename_pattern="%s.png.bmp.svg" \
--filename_source=unicode_int \
--disable_scale
相關文章
- 向量檔匯入字體檔
https://codereview.max-everyday.com/import-svg-to-font/ - Flattening PSD to JPG with multiple alpha channels
https://stackoverflow.max-everyday.com/2021/07/flattening-psd-to-jpg-with-multiple-alpha-channels/ - find指令找到的結果的字串處理
https://stackoverflow.max-everyday.com/2021/07/bash-variable-substitution-on-finds-output-through-exec/ - 取代圖片中顏色
https://codereview.max-everyday.com/change-color-in-image/ - 苦累蛙圓體修正錯字示範
https://stackoverflow.max-everyday.com/2021/07/correct-font-glyph-error/ - Max腳本檔案下載:
https://github.com/max32002/MaxFontScripts