X-Git-Url: https://main.carlh.net/gitweb/?p=dcpomatic.git;a=blobdiff_plain;f=graphics%2Fupdate;h=35aec325a78bb0f279f5b988804a65ca713038b5;hp=72aaa5f26221892882690c7bb68756084e246e0b;hb=b0d658e5c5b953b38e341a90518b5e7b2108811a;hpb=ecb2f017e18704e8c6c70463cf3a41a538034902 diff --git a/graphics/update b/graphics/update index 72aaa5f26..35aec325a 100755 --- a/graphics/update +++ b/graphics/update @@ -1,4 +1,4 @@ -#!/bin/bash +#!/bin/bash -e # # Update generated stuff in graphics/ from the source files. # @@ -6,13 +6,27 @@ # a) getting the wscript right is a complete pain in the arse # b) running Inkscape from the command line on OS X is a complete pain in the arse +set -e + pwd=`pwd` if [ `basename $pwd` != "graphics" ]; then echo "$0: run within graphics/" exit 1 fi -svg_apps="dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch dcpomatic2_player dcpomatic2_playlist dcpomatic2_disk" +function required_font() +{ + set +e + check=$(fc-list | grep "$1") + set -e + if [ "$check" == "" ]; then + echo "Missing font $1" + exit 1 + fi +} + +svg_apps="dcpomatic2_kdm dcpomatic2_server dcpomatic2_batch dcpomatic2_player dcpomatic2_playlist dcpomatic2_disk dcpomatic2_combiner" + if [ `uname -s` == "Darwin" ]; then # Convert OS X icons using OS X-only iconutil @@ -20,15 +34,17 @@ if [ `uname -s` == "Darwin" ]; then iconutil --convert icns --output osx/$p.icns osx/$p.iconset done else + required_font "Libre Baskerville" - for c in icotool convert inkscape; do + INKSCAPE="$HOME/Applications/inkscape" + for c in icotool convert inkbatch $INKSCAPE; do if [ ! -x "$(command -v $c)" ]; then echo "$c is required" exit 1 fi done - INKSCAPE="inkscape -z -C -e" + INKSCAPE_EXPORT="$INKSCAPE -C --export-type=png" # OS X application icons mkdir -p osx @@ -40,8 +56,8 @@ else done for p in $svg_apps; do mkdir -p osx/$p.iconset - $INKSCAPE osx/$p.iconset/icon_${r}x${r}.png -w $r -h $r src/$p.svg - $INKSCAPE osx/$p.iconset/icon_${r}x${r}@2x.png -w $r -h $r src/$p.svg + $INKSCAPE_EXPORT --export-filename=osx/$p.iconset/icon_${r}x${r}.png -w $r -h $r src/$p.svg + $INKSCAPE_EXPORT --export-filename=osx/$p.iconset/icon_${r}x${r}@2x.png -w $r -h $r src/$p.svg done done @@ -51,7 +67,7 @@ else mkdir -p linux/$r convert src/dcpomatic.png -resize $rx$r linux/$r/dcpomatic2.png for p in $svg_apps; do - $INKSCAPE linux/$r/$p.png src/$p.svg -w $r -h $r + $INKSCAPE_EXPORT --export-filename=linux/$r/$p.png src/$p.svg -w $r -h $r done done @@ -63,29 +79,30 @@ else convert src/dcpomatic.png -resize 400x400 windows/dcpomatic.bmp # OS X preferences icons - # servers.png does not have an SVG version mkdir -p osx/preferences - for i in colour_conversions defaults email kdm_email cover_sheet keys tms notifications locations sound identifiers; do - $INKSCAPE osx/preferences/$i.png src/$i.svg -w 32 -h 32 + for i in defaults email kdm_email cover_sheet keys tms notifications locations sound identifiers servers general advanced; do + inkbatch --inkscape $INKSCAPE -i bounds-$i -o osx/preferences/$i.png --width 32 --height 32 src/preferences.svg + inkbatch --inkscape $INKSCAPE -i bounds-$i -o osx/preferences/$i@2x.png --width 64 --height 64 src/preferences.svg done - # OS X menu bar icon for the server - $INKSCAPE osx/dcpomatic_small.png -w 64 -h 64 src/dcpomatic_small.svg + # OS X menu bar icon for the server (in dark and light mode) + $INKSCAPE_EXPORT --export-filename=osx/dcpomatic_small_white.png -w 64 -h 64 src/dcpomatic_small_white.svg + $INKSCAPE_EXPORT --export-filename=osx/dcpomatic_small_black.png -w 64 -h 64 src/dcpomatic_small_black.svg # Splash screen (all platforms) - $INKSCAPE splash.png src/splash.svg -w 400 -h 300 + $INKSCAPE_EXPORT --export-filename=splash.png src/splash.svg -w 400 -h 300 # Timeline toolbar icons (all platforms) for i in select zoom zoom_all snap sequence; do - $INKSCAPE $i.png src/$i.svg -w 32 -h 32 + $INKSCAPE_EXPORT --export-filename=$i.png src/$i.svg -w 32 -h 32 done # Playlist editor tick/no-tick - $INKSCAPE tick.png src/tick.svg -w 16 -h 16 - $INKSCAPE no_tick.png src/no_tick.svg -w 16 -h 16 + $INKSCAPE_EXPORT --export-filename=tick.png src/tick.svg -w 16 -h 16 + $INKSCAPE_EXPORT --export-filename=no_tick.png src/no_tick.svg -w 16 -h 16 # Link icon - $INKSCAPE link.png src/link.svg -w 9 -h 16 + $INKSCAPE_EXPORT --export-filename=link.png src/link.svg -w 9 -h 16 # favicon mkdir -p web