env/utils/bg/generate-FreeHugsBSD.sh

34 lines
1.1 KiB
Bash

#!/bin/sh
# env
# Written in 2019-2020 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:="#0c0700"}
: ${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