diff options
author | Alexey Dokuchaev <danfe@FreeBSD.org> | 2025-05-08 01:52:50 +0000 |
---|---|---|
committer | Alexey Dokuchaev <danfe@FreeBSD.org> | 2025-05-08 01:52:50 +0000 |
commit | 7a62e423dcb89a620d07cdca43c01f06c110c33c (patch) | |
tree | 36f87fbd4dfd6a9192c7c3e7c9393ea880d7d700 /misc/flag-icons/files/makeflags.sh | |
parent | devel/ruby-build: Update to 20250507 (diff) |
misc/flag-icons: supply three flag decoration flavors
- Add 16px height missing from the initial check-in
- Factor out common shell code into simple() function
and feed it with specifics; rounded() is special as
it does more complicated image transformations
Diffstat (limited to 'misc/flag-icons/files/makeflags.sh')
-rw-r--r-- | misc/flag-icons/files/makeflags.sh | 36 |
1 files changed, 34 insertions, 2 deletions
diff --git a/misc/flag-icons/files/makeflags.sh b/misc/flag-icons/files/makeflags.sh index ea16f8edd252..160212b7c673 100644 --- a/misc/flag-icons/files/makeflags.sh +++ b/misc/flag-icons/files/makeflags.sh @@ -1,5 +1,37 @@ +simple() +{ + local comment convert_extra_args destdir height ratio subdir t0 width + + comment=$1; convert_extra_args=$2; destdir=$3; shift 3 + + for subdir in ?x?; do + ratio=${subdir%x*}/${subdir#*x} + for height; do + width=$((height * $ratio)) + mkdir -p "$destdir/${width}x${height}" + echo -n "Generating $comment flags ${width}x${height}... " + t0=$(date +%s) + for flag in $subdir/*.svg; do + convert -resize ${width}x${height} $convert_extra_args \ + "$flag" "$destdir/${width}x${height}/$(basename "$flag" svg)png" + done + echo "finished in $(date -ur $((`date +%s`-t0)) +%M:%S)" + done + done +} + +plain() +{ + simple undecorated -strip "$@" +} + +bordered() +{ + simple black-bordered '-shave 1x1 -bordercolor black -border 1 -strip' "$@" +} + # https://joeldare.com/rounding-image-corners-with-imagemagick -rounded_corners() +rounded() { local destdir height mask radius ratio subdir t0 width @@ -18,7 +50,7 @@ rounded_corners() mkdir -p "$destdir/${width}x${height}" - echo -n "Generating flags ${width}x${height}... " + echo -n "Generating rounded corner flags ${width}x${height}... " t0=$(date +%s) for flag in $subdir/*.svg; do convert -resize ${width}x${height} \ |