Skip to content

Instantly share code, notes, and snippets.

@OrderAndCh4oS
Created February 23, 2020 10:47
Show Gist options
  • Save OrderAndCh4oS/b67264a2647ba202af3eec7f8c0b628e to your computer and use it in GitHub Desktop.
Save OrderAndCh4oS/b67264a2647ba202af3eec7f8c0b628e to your computer and use it in GitHub Desktop.
# flatColourConvert image.png red
function flatColourConvert() {
magick convert "$1" -fill "$2" -colorize 100% x.png
}
# replaceColours "#1B3057" "#2B373D"
# replaceColours red "#2B373D" 70%
function replaceColours() {
magick convert *.png -set filename:original %t -channel RGB -fuzz ${3:-25%} -fill $1 -opaque $2 %[filename:original].png
}
# smartResize "2400x2400>"
function smartResize() {
find ./ \( -name "*.[Jj][Pp][Gg]" -o -name "*.[Jj][Pp][Ee][Gg]" \) -exec magick mogrify -resize $1 -sampling-factor 4:2:0 -strip -interlace JPEG -quality 85 -colorspace RGB {} \;
find ./ \( -name "*.[Pp][Nn][Gg]" \) -exec magick mogrify -strip -resize $1 '{}' \;
}
# make-thumb-png 100x100>
function make-thumb-png() {
find ./ \( -name "*.[Pp][Nn][Gg]" \) -exec sh -c 'magick convert -strip -resize $1 "$0" "${0%.*}-$1.png"' {} $1 \;
}
# make-thumb-jpg "2400x2400>"
function make-thumb-jpg() {
find ./ \( -name "*.[Jj][Pp][Gg]" -o -name "*.[Jj][Pp][Ee][Gg]" \) -exec sh -c 'magick convert -resize $1 -sampling-factor 4:2:0 -strip -interlace JPEG -quality 85 -colorspace RGB "$0" "${0%.*}-$1.jpg"' {} $1 \;
}
# stackHoverOvers
# Expects files named like icon-off.png and icon-on.png
# Combines and stacks vertically for smooth rollovers
function stackHoverOvers() {
for i in *-off.png ;
do
OFF="$i"
NAME=${OFF%-off.png}
ON=$NAME"-on.png"
magick convert -append $OFF $ON $NAME".png"
done
}
function png2mp4() {
ffmpeg -framerate 12 -pattern_type glob -i '*.png' -c:v libx264 -pix_fmt yuv420p "out${1}.mp4";
mkdir "stills${1}";
find ./ -maxdepth 1 -name '*.png' -exec mv {} "./stills${1}" \;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment