Last active
January 27, 2023 17:22
-
-
Save derpycoder/658cb3c89420d332fbc4010404a012c0 to your computer and use it in GitHub Desktop.
Collection of Tasks to Crop, Resize & Compress Images
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
version: "3" | |
tasks: | |
convert: | |
dir: "{{.USER_WORKING_DIR}}" | |
desc: Convert Animated PNGs to Gifs | |
summary: | | |
task gif:convert | |
cmds: | |
- for file in ./*.png; do ffmpeg -i "$file" -filter_complex "[0:v] scale=256:256, split [a][b]; [a] palettegen=reserve_transparent=on:transparency_color=ffffff [p]; [b][p] paletteuse" "${file%.*}.gif"; done | |
sources: | |
- ./*.png | |
generates: | |
- ./*.gif | |
compress: | |
dir: "{{.USER_WORKING_DIR}}" | |
desc: Compress Gifs | |
summary: | | |
task gif:compress | |
vars: | |
FOLDER: "gif" | |
cmds: | |
- for file in ./*.gif; do convert "$file" -coalesce -fuzz 5% -layers Optimize +map "${file%.*}.min.gif"; done | |
- mkdir -p {{.FOLDER}} | |
- mv *.min.gif ./{{.FOLDER}} | |
sources: | |
- ./*.gif | |
generates: | |
- ./{{.FOLDER}}/*.min.gif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
version: "3" | |
tasks: | |
compress: | |
dir: "{{.USER_WORKING_DIR}}" | |
aliases: [c] | |
desc: Used to Compress WebP Images. | |
summary: | | |
task webp:compress | |
task webp:compress -- 90 // Specify Quality | |
vars: | |
QUALITY: "{{default 80 .CLI_ARGS}}" | |
FOLDER: "webp" | |
cmds: | |
- mkdir -p {{.FOLDER}} | |
- defer: mv *.webp ./{{.FOLDER}} | |
- for file in ./*.*; do cwebp -mt -q {{.QUALITY}} "$file" -o "${file%.*}.webp"; done | |
sources: | |
- ./*.png | |
generates: | |
- ./{{.FOLDER}}/*.webp | |
scale: | |
dir: "{{.USER_WORKING_DIR}}" | |
aliases: [s] | |
desc: Used to Compress WebP Images. | |
summary: | | |
task webp:scale | |
task webp:scale -- 2000 // Specify Scale | |
QUALITY=70 task webp:s -- 1000 // Specify Quality & Scale | |
vars: | |
WIDTH: "{{default 2000 .CLI_ARGS}}" | |
QUALITY: "{{default 80 .QUALITY}}" | |
FOLDER: "webp" | |
cmds: | |
- for file in ./*.*; do cwebp -q {{.QUALITY}} "$file" -o "${file%.*}.webp"; done | |
- mkdir -p {{.FOLDER}} | |
- mv *.webp ./{{.FOLDER}} | |
sources: | |
- ./*.png | |
generates: | |
- ./{{.FOLDER}}/*.webp | |
crop: | |
dir: "{{.USER_WORKING_DIR}}" | |
desc: Used to Crop WebP Images. | |
summary: | | |
task webp:crop -- 1000 1000 | |
cmds: | |
- for file in ./*; do cwebp -mt -q 80 -crop 0 0 {{.CLI_ARGS}} "$file" -o "${file%.*}.webp"; done |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
version: "3" | |
env: | |
QUALITY: 80 | |
includes: | |
webp: ./Taskfile.webp.yml | |
gif: ./Taskfile.gif.yml | |
tasks: | |
update: | |
desc: Update all installed dependencies | |
summary: | | |
task update | |
cmds: | |
- brew update | |
- brew upgrade | |
- brew cleanup | |
install: | |
desc: Install all dependencies using HomeBrew | |
summary: | | |
Must have Task installed (brew install go-task) | |
task setup | |
cmds: | |
- task: update | |
- brew install ffmpeg | |
- brew install imagemagick | |
- brew install webp | |
create: | |
desc: Creates a Taskfile.yml | |
summary: | | |
task create -- gif | |
cmds: | |
- echo --- > Taskfile.{{.CLI_ARGS}}.yml |
Author
derpycoder
commented
Jan 27, 2023
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment