@@ -123,16 +123,18 @@ composite_svgs() {
123
123
local base_svg=" $1 "
124
124
local overlay_svg=" $2 "
125
125
local output_svg=" $3 "
126
- local overlay_margin=" $4 "
126
+ local base_margin=" $4 "
127
+ local overlay_margin=" $5 "
127
128
128
- if [[ -z " $base_svg " || -z " $overlay_svg " || -z " $overlay_margin " || -z " $output_svg " ]]; then
129
- echo " Usage: composite_svgs <base_svg> <overlay_svg> <output_svg> <overlay_margin>"
129
+ if [[ -z " $base_svg " || -z " $overlay_svg " || -z " $base_margin " || -z " $ overlay_margin" || -z " $output_svg " ]]; then
130
+ echo " Usage: composite_svgs <base_svg> <overlay_svg> <output_svg> <base_margin> < overlay_margin>"
130
131
return 1
131
132
fi
132
133
133
134
cp " $base_svg " " $TMP_DIR /base.svg"
134
135
cp " $overlay_svg " " $TMP_DIR /overlay.svg"
135
136
137
+ add_margin_to_svg " $TMP_DIR /base.svg" " $base_margin "
136
138
add_margin_to_svg " $TMP_DIR /overlay.svg" " $overlay_margin "
137
139
138
140
# Optimize the base and overlay SVGs.
@@ -149,15 +151,16 @@ composite_svgs_and_save_as_png() {
149
151
local base_svg=" $1 "
150
152
local overlay_svg=" $2 "
151
153
local output_png=" $3 "
152
- local overlay_margin=" $4 "
153
- local size=" $5 "
154
+ local base_margin=" $4 "
155
+ local overlay_margin=" $5 "
156
+ local size=" $6 "
154
157
155
- if [[ -z " $base_svg " || -z " $overlay_svg " || -z " $output_png " || -z " $overlay_margin " || -z " $size " ]]; then
156
- echo " Usage: composite_svgs_and_save_as_png <base_svg> <overlay_svg> <output_png> <overlay_margin> <size>"
158
+ if [[ -z " $base_svg " || -z " $overlay_svg " || -z " $output_png " || -z " $base_margin " || -z " $ overlay_margin" || -z " $size " ]]; then
159
+ echo " Usage: composite_svgs_and_save_as_png <base_svg> <overlay_svg> <output_png> <base_margin> < overlay_margin> <size>"
157
160
return 1
158
161
fi
159
162
160
- composite_svgs " $base_svg " " $overlay_svg " " $TMP_DIR /tmp.svg" " $overlay_margin "
163
+ composite_svgs " $base_svg " " $overlay_svg " " $TMP_DIR /tmp.svg" " $base_margin " " $ overlay_margin"
161
164
convert_svg_to_png " $TMP_DIR /tmp.svg" " $output_png " " $size "
162
165
rm " $TMP_DIR /tmp.svg"
163
166
}
@@ -189,7 +192,7 @@ convert_svg_to_png "$TMP_DIR/blossom_tiny_dark.svg" "$OUTPUT_DIR/trayDark.png" 6
189
192
rm " $TMP_DIR /blossom_tiny_dark.svg"
190
193
191
194
# For the colored tray icon, we overlay the blossom_tiny.svg onto the bg_tiny_square.svg.
192
- composite_svgs source/bg_tiny_square.svg source/blossom_tiny.svg $TMP_DIR /trayColor.svg 24
195
+ composite_svgs source/bg_tiny_square.svg source/blossom_tiny.svg $TMP_DIR /trayColor.svg 0 24
193
196
convert_svg_to_png " $TMP_DIR /trayColor.svg" " $OUTPUT_DIR /trayColor.png" 64
194
197
195
198
@@ -198,26 +201,26 @@ convert_svg_to_png "$TMP_DIR/trayColor.svg" "$OUTPUT_DIR/trayColor.png" 64
198
201
echo " Creating favicon..."
199
202
200
203
# For the browser favicon, we overlay the blossom_small.svg onto the bg_tiny_square.svg.
201
- composite_svgs source/bg_tiny_square.svg source/blossom_small.svg $OUTPUT_DIR /favicon.svg 24
204
+ composite_svgs source/bg_tiny_square.svg source/blossom_small.svg $OUTPUT_DIR /favicon.svg 0 24
202
205
203
206
204
207
# --------------------------------------- Homepage Icon ------------------------------------------ #
205
208
206
209
echo " Creating homepage icon..."
207
210
208
211
# The homepage icon is an SVG made from blossom_medium.svg on top of bg_square.svg.
209
- composite_svgs source/bg_square.svg source/blossom_medium.svg $OUTPUT_DIR /web-icon.svg 32
212
+ composite_svgs source/bg_square.svg source/blossom_medium.svg $OUTPUT_DIR /web-icon.svg 16 32
210
213
211
214
212
215
# ---------------------------------------- Linux Icon -------------------------------------------- #
213
216
214
217
echo " Creating Linux icon..."
215
218
216
219
# The Linux icon is an SVG made from blossom_medium.svg on top of bg_circle.svg.
217
- composite_svgs source/bg_circle.svg source/blossom_medium.svg $OUTPUT_DIR /icon.svg 32
220
+ composite_svgs source/bg_circle.svg source/blossom_medium.svg $OUTPUT_DIR /icon.svg 0 32
218
221
219
222
# We also need a png version of the icon.
220
- convert_svg_to_png " $OUTPUT_DIR /icon.svg" " $OUTPUT_DIR /icon.png" 512
223
+ convert_svg_to_png " $OUTPUT_DIR /icon.svg" " $OUTPUT_DIR /icon.png" 0 512
221
224
222
225
223
226
# ---------------------------------------- Windows Icon ------------------------------------------ #
@@ -229,12 +232,12 @@ WIN_TMP_DIR=$TMP_DIR/win
229
232
mkdir -p $WIN_TMP_DIR
230
233
231
234
# Create PNGs at different sizes.
232
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_tiny.svg " $WIN_TMP_DIR /16.png" 32 16
233
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_small.svg " $WIN_TMP_DIR /32.png" 32 32
234
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_medium.svg " $WIN_TMP_DIR /48.png" 32 48
235
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_medium.svg " $WIN_TMP_DIR /64.png" 32 64
236
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_large.svg " $WIN_TMP_DIR /96.png" 32 96
237
- composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_large.svg " $WIN_TMP_DIR /256.png" 32 256
235
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_tiny.svg " $WIN_TMP_DIR /16.png" 0 32 16
236
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_small.svg " $WIN_TMP_DIR /32.png" 0 32 32
237
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_medium.svg " $WIN_TMP_DIR /48.png" 0 32 48
238
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_medium.svg " $WIN_TMP_DIR /64.png" 0 32 64
239
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_large.svg " $WIN_TMP_DIR /96.png" 0 32 96
240
+ composite_svgs_and_save_as_png source/bg_circle.svg source/blossom_large.svg " $WIN_TMP_DIR /256.png" 0 32 256
238
241
239
242
convert \
240
243
" $WIN_TMP_DIR /16.png" \
@@ -255,16 +258,16 @@ MAC_TMP_DIR=$TMP_DIR/icon.iconset
255
258
mkdir -p $MAC_TMP_DIR
256
259
257
260
# Create PNGs at different sizes.
258
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_tiny.svg " $MAC_TMP_DIR /icon_16x16.png" 40 16
259
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_small.svg
" $MAC_TMP_DIR /[email protected] " 36 32
260
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_small.svg " $MAC_TMP_DIR /icon_32x32.png" 36 32
261
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_medium.svg
" $MAC_TMP_DIR /[email protected] " 32 64
262
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_medium.svg " $MAC_TMP_DIR /icon_128x128.png" 32 128
263
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 32 256
264
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg " $MAC_TMP_DIR /icon_256x256.png" 32 256
265
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 32 512
266
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg " $MAC_TMP_DIR /icon_512x512.png" 32 512
267
- composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 32 1024
261
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_tiny.svg " $MAC_TMP_DIR /icon_16x16.png" 16 40 16
262
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_small.svg
" $MAC_TMP_DIR /[email protected] " 16 36 32
263
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_small.svg " $MAC_TMP_DIR /icon_32x32.png" 16 36 32
264
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_medium.svg
" $MAC_TMP_DIR /[email protected] " 24 40 64
265
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_medium.svg " $MAC_TMP_DIR /icon_128x128.png" 24 40 128
266
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 24 40 256
267
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg " $MAC_TMP_DIR /icon_256x256.png" 24 40 256
268
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 24 40 512
269
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg " $MAC_TMP_DIR /icon_512x512.png" 24 40 512
270
+ composite_svgs_and_save_as_png source/bg_square.svg source/blossom_large.svg
" $MAC_TMP_DIR /[email protected] " 24 40 1024
268
271
269
272
# Create the icns file. If the iconutil command is not available, we print a warning and skip this step.
270
273
if command -v iconutil > /dev/null 2>&1 ; then
279
282
echo " Creating social icon..."
280
283
281
284
# The social icon is an SVG made from blossom_medium.svg on top of bg_full.svg.
282
- composite_svgs source/bg_full.svg source/blossom_medium.svg $OUTPUT_DIR /social.svg 32
285
+ composite_svgs source/bg_full.svg source/blossom_medium.svg $OUTPUT_DIR /social.svg 0 32
283
286
284
287
# We also need a png version of the icon.
285
288
convert_svg_to_png " $OUTPUT_DIR /social.svg" " $OUTPUT_DIR /social.png" 512
0 commit comments