aboutsummaryrefslogtreecommitdiff
path: root/font_lib/tools/make_font_textures.sh
diff options
context:
space:
mode:
Diffstat (limited to 'font_lib/tools/make_font_textures.sh')
-rwxr-xr-xfont_lib/tools/make_font_textures.sh111
1 files changed, 0 insertions, 111 deletions
diff --git a/font_lib/tools/make_font_textures.sh b/font_lib/tools/make_font_textures.sh
deleted file mode 100755
index ade2e32..0000000
--- a/font_lib/tools/make_font_textures.sh
+++ /dev/null
@@ -1,111 +0,0 @@
-#!/bin/bash
-
-# This program generates a bitmap font for font_lib mod for Minetest game.
-# (c) Andrzej Pieńkowski <pienkowski.andrzej@gmail.com>
-# (c) Pierre-Yves Rollo <dev@pyrollo.com>
-# License: GPL
-
-usage() {
- echo "Usage: $0 fontfile fontname fontsize"
- echo "fontfile: A TTF font file to use to create textures."
- echo "fontname: The font name to be used in font_lib (should be simple, with no spaces)."
- echo "fontsize: Font height to be rendered."
-}
-
-if [ $# -ne 3 ]
-then
- usage
- exit 1
-fi
-
-fontfile=$1
-fontname=$2
-fontsize=$3
-
-if [ ! -r "$fontfile" ]
-then
- echo "$fontfile not readable."
- exit 1
-fi
-
-# check imagemagick
-hash convert &>/dev/null
-if [ $? -eq 1 ]; then
- echo -e "Error: This program requires convert from ImageMagick! Please install it by typing 'sudo apt-get install imagemagick' in terminal."
- abort=1
-fi
-
-# check ttx
-hash ttx &>/dev/null
-if [ $? -eq 1 ]; then
- echo -e "Error: This program requires ttx from FontTools! Please install it by typing 'sudo apt-get install fonttools' in terminal."
- abort=1
-fi
-
-if [ $abort ]
-then
- exit 1
-fi
-
-generate() {
- for i in $(seq $((0x$1)) $((0x$2)))
- do
- if echo "$codepoints" | grep -qi $(printf "0x%x" $i)
- then
- hex=$(printf "%04x" $i)
- echo -e "Generating textures/font_${fontname}_$hex.png file for \"\\U$hex\" char."
- if [[ "$hex" == "005c" ]] # Backslash char
- then
- convert -background none -fill black -font "$fontfile" -pointsize $fontsize label:"\\\\" -colorspace gray -channel alpha -threshold 50% textures/font_${fontname}_$hex.png
- else
- convert -background none -fill black -font "$fontfile" -pointsize $fontsize label:"$(echo -en "\\U$hex")" -colorspace gray -channel alpha -threshold 50% textures/font_${fontname}_$hex.png
- fi
- fi
- done
-}
-
-mkdir textures
-
-# Reads all available code points in the font.
-codepoints=$(ttx -o - $fontfile | grep "<map code=" | cut -d \" -f 2)
-
-# Mandatory chars
-generate 0020 007f
-
-# generate space and null characters
-if [ ! -f "textures/font_${fontname}_0030.png" ]; then
- echo "Error: Something wrong happened! Font was not generated!"
- exit 1
-else
- size=$(identify textures/font_${fontname}_0030.png | cut -d " " -f 3)
- if ! [[ $fontHeight =~ $re ]] ; then
- echo "Error: Something wrong happened! Generated files might be broken!"
- exit 1
- else
- w=$(expr $(echo $size | cut -d x -f 1) - 1)
- h=$(expr $(echo $size | cut -d x -f 2) - 1)
- # Space char
- convert -size $size xc:transparent -colorspace gray textures/font_${fontname}_0020.png
- # Null char
- convert -size $size xc:transparent -colorspace gray -stroke black -fill transparent -strokewidth 1 -draw "rectangle 0,0 $w,$h" textures/font_${fontname}_0000.png
- fi
-fi
-
-# Optional Unicode pages (see https://en.wikipedia.org/wiki/Unicode) :
-
-# 00a0-00ff Latin-1 Supplement (full)
-generate 00a0 00ff
-# 0100-017f Latin Extended-A (full)
-generate 0100 017f
-# 0370-03ff Greek (full)
-generate 0370 03ff
-# 0400-04ff Cyrilic (full)
-generate 0400 04ff
-# 2000-206f General Punctuation (Limited to Dashes)
-generate 2010 2015
-# 2000-206f General Punctuation (Limited to Quotes)
-generate 2018 201F
-# 20a0-20cf Currency Symbols (Limited to Euro symbol)
-generate 20ac 20ac
-
-