Skip to content

Instantly share code, notes, and snippets.

@rod-stuchi
Created August 9, 2016 08:51
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save rod-stuchi/61cbd8184f48231a145bf53059c6f2dd to your computer and use it in GitHub Desktop.
Save rod-stuchi/61cbd8184f48231a145bf53059c6f2dd to your computer and use it in GitHub Desktop.
Convert SVGs to Android drawable-[*dpi]
#!/bin/bash
rm -rf ./pngs
mkdir -p ./pngs/drawable-ldpi
mkdir -p ./pngs/drawable-mdpi
mkdir -p ./pngs/drawable-hdpi
mkdir -p ./pngs/drawable-xhdpi
mkdir -p ./pngs/drawable-xxhdpi
mkdir -p ./pngs/drawable-xxxhdpi
echo -e "\e[93mExported in: \e[96m./pngs/drawable-[*dpi]"
echo ""
for f in *.svg; do
file="${f%.*}"
ff="${file//[\- ]/_}.png"
echo -e "\e[92m${ff}"
echo -en " \e[97m\e[44mldpi"
svg2png "${f}" --output=./pngs/drawable-ldpi/"${ff}" -w=36 -h=36
echo -en "\e[49m \e[44mmdpi"
svg2png "${f}" --output=./pngs/drawable-mdpi/"${ff}" -w=48 -h=48
echo -en "\e[49m \e[44mhdpi"
svg2png "${f}" --output=./pngs/drawable-hdpi/"${ff}" -w=72 -h=72
echo -en "\e[49m \e[44mxhdpi"
svg2png "${f}" --output=./pngs/drawable-xhdpi/"${ff}" -w=96 -h=96
echo -en "\e[49m \e[44mxxhdpi"
svg2png "${f}" --output=./pngs/drawable-xxhdpi/"${ff}" -w=180 -h=180
echo -en "\e[49m \e[44mxxxhdpi"
svg2png "${f}" --output=./pngs/drawable-xxxhdpi/"${ff}" -w=192 -h=192
echo -e "\e[49m"
echo -e "\e[49m"
done
#36x36 for low-density (LDPI)
#48x48 for medium-density (MDPI)
#72x72 for high-density (HDPI)
#96x96 for extra high-density (XHDPI)
#180x180 for extra extra high-density (XXHDPI)
#192x192 for extra extra extra high-density (XXXHDPI)
#colors
#http://misc.flogisoft.com/bash/tip_colors_and_formatting
#bash echo same line
#http://stackoverflow.com/questions/12628327/how-to-show-and-update-echo-on-same-line
#https://www.npmjs.com/package/font-awesome-svg
#https://www.npmjs.com/packagesvg2png
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment