36 lines
1.2 KiB
Bash
Executable File
36 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
. setenv.sh
|
|
|
|
|
|
if [ -z "$1" ]; then
|
|
echo "please give a .svg file of a glyph as input"
|
|
exit 1
|
|
fi
|
|
if [ -s "$1" ]; then
|
|
export BASE=`basename $1 .svg`
|
|
export TARGET=$PICCREATE_OUT/$BASE.svg
|
|
else
|
|
echo "input file does not exist"
|
|
exit 1
|
|
fi
|
|
|
|
# extrahiere die wichtigen Zeilen aus dem Font
|
|
cat $1 | egrep '<\<line\>|x1|x2|y1|y2|/>|style' | egrep -v '\<text\>|id=|http:' > line-$BASE.svg
|
|
cat $1 | egrep 'circle|translate|\<r\>' > circles-$BASE.svg
|
|
cat $1 | egrep '<\<text|text\>>|\<x\>=|\<y\>=|tspan' | egrep -v '\<transform-center-x\>|\<window-|\<id\>=' > text-$BASE.svg
|
|
|
|
# reduziere einige Zeilen um bestimmte Muster
|
|
cat line-$BASE.svg | sed -e 's/inkscape:transform-center-x=".*"//g' > $$; mv $$ line-$BASE.svg
|
|
cat text-$BASE.svg | sed -e 's/inkscape:transform-center-y=".*"//g' > $$; mv $$ text-$BASE.svg
|
|
|
|
# schreib einen neuen Buchstaben
|
|
echo '<svg xmlns="http://www.w3.org/2000/svg" version="1.1">' > $TARGET
|
|
cat text-$BASE.svg >> $TARGET
|
|
cat circles-$BASE.svg >> $TARGET
|
|
cat line-$BASE.svg >> $TARGET
|
|
echo '</svg>' >> $TARGET
|
|
|
|
rm line-$BASE.svg
|
|
rm circles-$BASE.svg
|
|
rm text-$BASE.svg
|