env/utils/bg/generate-FreeHugsBSD.sh

35 lines
1.1 KiB
Bash

#!/bin/sh
# env
# Written in 2019 by Lucas
# CC0 1.0 Universal/Public domain - No rights reserved
#
# To the extent possible under law, the author(s) have dedicated all
# copyright and related and neighboring rights to this software to the
# public domain worldwide. This software is distributed without any
# warranty. You should have received a copy of the CC0 Public Domain
# Dedication along with this software. If not, see
# <http://creativecommons.org/publicdomain/zero/1.0/>.
: ${CANVAS_BGCOLOR:="#0d0a00"}
: ${CANVAS_HEIGHT:=768}
: ${CANVAS_WIDTH:=1366}
: ${IMAGE_HEIGHT:=500}
: ${IMAGE_WIDTH:=500}
pos_x=$((3 * $CANVAS_WIDTH / 4 - $IMAGE_WIDTH / 2))
pos_y=$(($CANVAS_HEIGHT / 2 - $IMAGE_HEIGHT / 2))
if ! tmpfile=$(mktemp -t bg.XXXXXXXXXX); then
printf "%s: Can't create temporary file.\n" "${0##*/}" >&2
exit 1
fi
trap 'rm -f "$tmpfile"' EXIT INT QUIT TERM
pngtopam -alphapam FreeHugsBSD.png \
| pamscale -width="$IMAGE_WIDTH" -height="$IMAGE_HEIGHT" \
>"$tmpfile"
ppmmake "$CANVAS_BGCOLOR" "$CANVAS_WIDTH" "$CANVAS_HEIGHT" \
| pamcomp -xoff="$pos_x" -yoff="$pos_y" "$tmpfile" \
| pamtopng >FreeHugsBSD-bg.png