Maraiah/tools/gen_images

56 lines
1.1 KiB
Plaintext
Raw Normal View History

2019-07-08 08:05:19 -07:00
#!/usr/bin/env fish
2019-07-24 19:14:02 -07:00
# vim: syntax=fish:
set dir $argv[1]
cd $dir
2019-07-08 08:05:19 -07:00
set sizes 16 24 32 48 64 128 256 512 1024
set hidpi 32 48 64 96 128 256 512 1024 2048
set numsize 9
mkdir -p resources/icons
2019-07-08 08:53:14 -07:00
rm -f resources/icons/* resources/icons.qrc
2019-07-08 08:05:19 -07:00
echo "<RCC>" > resources/icons.qrc
2019-07-24 19:14:02 -07:00
echo '<qresource prefix="/'$dir'">' >> resources/icons.qrc
2019-07-08 08:05:19 -07:00
function conv_icon -a out sz inf
2019-07-08 08:53:14 -07:00
rsvg-convert -w "$sz" -h "$sz" -f svg -o "$out" "$inf" &
2019-07-08 08:05:19 -07:00
end
2019-07-08 08:53:14 -07:00
function compress -a out
pigz --best -fm -S z "$out"
2019-07-08 08:05:19 -07:00
end
function comp_icon -a f i
set sz $sizes[$i]
set hz $hidpi[$i]
set out icons/(basename -s .svg "$f")_$sz
2019-07-08 08:53:14 -07:00
set out_s $out.svg
set out_h $out@2x.svg
echo \t"<file>$out_s""z</file>" >> resources/icons.qrc
echo \t"<file>$out_h""z</file>" >> resources/icons.qrc
2019-07-08 08:05:19 -07:00
set out_s resources/$out_s
set out_h resources/$out_h
conv_icon "$out_s" "$sz" "$f"
conv_icon "$out_h" "$hz" "$f"
2019-07-08 08:53:14 -07:00
wait rsvg-convert
compress "$out_s"
compress "$out_h"
2019-07-24 19:36:36 -07:00
echo "OK $out"
2019-07-08 08:05:19 -07:00
end
for f in resources/mini/*.svg
for i in (seq 1 "$numsize")
comp_icon "$f" "$i"
end
end
echo "</qresource>" >> resources/icons.qrc
echo "</RCC>" >> resources/icons.qrc
echo "done"
## EOF