From 3fe83bdc83fa85f18d553c7055689665d9b0f567 Mon Sep 17 00:00:00 2001 From: Melvin Keskin Date: Sat, 18 Feb 2023 17:50:28 +0100 Subject: [PATCH] Add rendering for graphics used externally (e.g., support chat avatar) Variants of the logo inlcuding specific margins can be generated. That is needed if the logo is used without the possibility to dynamically adjust its margins. --- .gitignore | 1 + render-graphics.sh | 39 +++++++++++++++++++++++++++++++++++++++ support-chat-avatar.png | Bin 0 -> 5294 bytes 3 files changed, 40 insertions(+) create mode 100755 render-graphics.sh create mode 100644 support-chat-avatar.png diff --git a/.gitignore b/.gitignore index f1962b88b..b1ccc1e75 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ CMakeLists.txt.* build* .kdev4/ *.kdev4 +support-chat-avatar.png diff --git a/render-graphics.sh b/render-graphics.sh new file mode 100755 index 000000000..d01285364 --- /dev/null +++ b/render-graphics.sh @@ -0,0 +1,39 @@ +#!/bin/bash + +# SPDX-FileCopyrightText: 2023 Melvin Keskin +# +# SPDX-License-Identifier: GPL-3.0-or-later + +QXMPP_SOURCES=$(dirname "$(readlink -f "${0}")") + +echo "*****************************************" +echo "Rendering graphics" +echo "*****************************************" + +render_support_chat_avatar() { + render_svg_with_margin $QXMPP_SOURCES/logo.svg $QXMPP_SOURCES/support-chat-avatar.png 300 300 18 +} + +# $1 - $4: see render_svg() +# $5: margin +render_svg_with_margin() { + output_directory=$(dirname $2) + mkdir -p $output_directory + tmp_file=$output_directory/rendered_tmp.svg + inkscape -o $tmp_file --export-margin=$5 $1 + render_svg $tmp_file $2 $3 $4 + rm $tmp_file +} + +# $1: input file +# $2: output file +# $3: width +# $4: height +render_svg() { + inkscape -o $2 -w $3 -h $4 $1 >/dev/null + optipng -quiet -o7 $2 >/dev/null + advpng -z4 $2 >/dev/null + echo "Created "$2 +} + +render_support_chat_avatar diff --git a/support-chat-avatar.png b/support-chat-avatar.png new file mode 100644 index 0000000000000000000000000000000000000000..4b9b7a75cba7e05e0f1f79161528ad78c6b0a3a7 GIT binary patch literal 5294 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 literal 0 HcmV?d00001