From b804d8ebfe38e7559e26d7df05d3fbf87c9652a3 Mon Sep 17 00:00:00 2001 From: xyz Date: Wed, 11 Aug 2021 03:53:26 -0700 Subject: convert wallpaper script --- .local/bin/convwall | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100755 .local/bin/convwall (limited to '.local/bin/convwall') diff --git a/.local/bin/convwall b/.local/bin/convwall new file mode 100755 index 00000000..326a3de9 --- /dev/null +++ b/.local/bin/convwall @@ -0,0 +1,27 @@ +#!/bin/sh + +# 16:9 screen resolution ratio +wratio=16 +hratio=9 +chopnum=99% + +width=$(identify -format '%w' "$1") +height=$(identify -format '%h' "$1") + +dim=$(echo "$width*100/$height" | bc) + +if [ "$dim" -ne 177 ]; then + if [ "$dim" -lt 177 ]; then + chopgeom="${chopnum}x0" + width=$(echo "$height*$wratio/$hratio" | bc) + else + chopgeom="0x${chopnum}" + height=$(echo "$width*$hratio/$wratio" | bc) + fi + extgeom="${width}x${height}" + bgcolor=$(convert "$1" -gravity center -chop "$chopgeom" -define histogram:unique-colors=true -format %c histogram:info:- | sort -rn | head -n1 | awk \{print\ \$3\} | cut -c1-7) + convert "$1" -gravity center -background "$bgcolor" -extent "$extgeom" "$2" +else + echo 'same resolution ratio, no need to convert' >&2 + exit 1 +fi -- cgit v1.2.3-70-g09d2