2 # Converts my logo to various formats from a template SVG
5 [[ -z ${1} ]] && echo "Please provide an output format!" && exit 1
7 [[ ${1} == "svg" ]] && find . -name *.svg -not -path "./template/*" -exec rm {} \;
9 if [[ (! -d "square/svg" || ! -d "circle/svg") || (${1} == "svg") ]]; then
10 for SHAPE in square circle; do
11 mkdir -pv ${SHAPE}/svg
13 sed -e 's/STROKE/stroke="#00ffbf" /g' \
14 -e 's/FILL/ fill="#212121"/g' template/${SHAPE}.svg \
15 > ${SHAPE}/svg/logo-${SHAPE}-color-dark.svg
17 sed -e 's/STROKE/stroke="#00ffbf" /g' \
18 -e 's/FILL/ fill="#fff"/g' template/${SHAPE}.svg \
19 > ${SHAPE}/svg/logo-${SHAPE}-color-white.svg
21 sed -e 's/STROKE/stroke="#00ffbf" /g' \
22 -e 's/FILL//g' template/${SHAPE}.svg \
23 > ${SHAPE}/svg/logo-${SHAPE}-color-trans.svg
25 sed -e 's/STROKE/stroke="#212121" /g' \
26 -e 's/FILL/ fill="#00ffbf"/g' template/${SHAPE}.svg \
27 > ${SHAPE}/svg/logo-${SHAPE}-dark-color.svg
29 sed -e 's/STROKE/stroke="#212121" /g' \
30 -e 's/FILL/ fill="#fff"/g' template/${SHAPE}.svg \
31 > ${SHAPE}/svg/logo-${SHAPE}-dark-white.svg
33 sed -e 's/STROKE/stroke="#212121" /g' \
34 -e 's/FILL//g' template/${SHAPE}.svg \
35 > ${SHAPE}/svg/logo-${SHAPE}-dark-trans.svg
37 sed -e 's/STROKE/stroke="#fff" /g' \
38 -e 's/FILL/ fill="#00ffbf"/g' template/${SHAPE}.svg \
39 > ${SHAPE}/svg/logo-${SHAPE}-white-color.svg
41 sed -e 's/STROKE/stroke="#fff" /g' \
42 -e 's/FILL/ fill="#212121"/g' template/${SHAPE}.svg \
43 > ${SHAPE}/svg/logo-${SHAPE}-white-dark.svg
45 sed -e 's/STROKE/stroke="#fff" /g' \
46 -e 's/FILL//g' template/${SHAPE}.svg \
47 > ${SHAPE}/svg/logo-${SHAPE}-white-trans.svg
51 [[ ${1} == "svg" ]] && exit 0
53 [[ ${1} == "png" ]] && find . -name *.png -exec rm {} \;
55 if [[ (! -d "square/png" || ! -d "circle/png") || (${1} == "png") ]]; then
56 for SHAPE in square circle; do
57 for i in 2048 1024 512 256 128; do
58 mkdir -pv ${SHAPE}/png/${i}
61 for i in 2048 1024 512 256 128; do
62 for SVGIN in square/svg/*; do
63 BASE=$(basename ${SVGIN} | cut -d '.' -f 1)
64 inkscape -w ${i} -h ${i} ${SVGIN} --export-filename \
65 square/png/${i}/${BASE}-${i}.png
68 for SVGIN in circle/svg/*; do
69 BASE=$(basename ${SVGIN} | cut -d '.' -f 1)
70 inkscape -w ${i} -h ${i} ${SVGIN} --export-filename \
71 circle/png/${i}/${BASE}-${i}.png
77 [[ ${1} == "png" ]] && exit 0
79 if [[ ${1} == "ascii" ]]; then
80 find . -name *ascii.txt -exec rm {} \;
81 for SHAPE in square circle; do
82 for i in 10 15 20 25 30 35 40 45 50; do
83 mkdir -pv ${SHAPE}/ascii/${i}
85 for PNGIN in circle/png/2048/*; do
86 BASE=$(basename ${PNGIN} | cut -d '.' -f 1)
87 jp2a --height=${i} ${PNGIN} > circle/ascii/${i}/${BASE}-${i}.ascii.txt
90 for PNGIN in square/png/2048/*; do
91 BASE=$(basename ${PNGIN} | cut -d '.' -f 1)
92 jp2a --height=${i} ${PNGIN} > square/ascii/${i}/${BASE}-${i}.ascii.txt
99 if [[ ${1} == "unicode" ]]; then
100 find . -name *unicode.txt -exec rm {} \;
101 for SHAPE in square circle; do
102 for i in 10 15 20 25 30 35 40 45 50; do
103 mkdir -pv ${SHAPE}/unicode/${i}
105 for PNGIN in circle/png/2048/*; do
106 BASE=$(basename ${PNGIN} | cut -d '-' -f -4)
107 chafa -c none -s ${i}x${i} ${PNGIN} \
108 > circle/unicode/${i}/${BASE}-${i}.unicode.txt
111 for PNGIN in square/png/2048/*; do
112 BASE=$(basename ${PNGIN} | cut -d '-' -f -4)
113 chafa -c none -s ${i}x${i} ${PNGIN} \
114 > square/unicode/${i}/${BASE}-${i}.unicode.txt
121 for SHAPE in square circle; do
122 find . -name *.${1} -exec rm {} \;
124 for i in 2048 1024 512 256 128; do
125 mkdir -pv ${SHAPE}/${1}/${i}
128 # for PAT in $(find -name *.png); do
130 convert -verbose ${PAT} ${PAT//png/${1}}
131 done < <(find -name *.png)