mirror of
https://github.com/SchildiChat/SchildiChat-android.git
synced 2024-12-21 00:32:09 +03:00
63 lines
2.4 KiB
Bash
Executable file
63 lines
2.4 KiB
Bash
Executable file
#!/bin/bash
|
|
# note: this requires inkscape to be on the path, for svg -> png conversions
|
|
|
|
mydir="$(dirname "$(realpath "$0")")"
|
|
|
|
export_files() {
|
|
newfile="$(basename "$file" .svg).png"
|
|
mkdir -p $base_folder-mdpi
|
|
mkdir -p $base_folder-hdpi
|
|
mkdir -p $base_folder-xhdpi
|
|
mkdir -p $base_folder-xxhdpi
|
|
mkdir -p $base_folder-xxxhdpi
|
|
inkscape "$file" --export-filename="$base_folder-mdpi/$newfile" -C --export-dpi=$dpi
|
|
inkscape "$file" --export-filename="$base_folder-hdpi/$newfile" -C --export-dpi=$(($dpi*3/2))
|
|
inkscape "$file" --export-filename="$base_folder-xhdpi/$newfile" -C --export-dpi=$(($dpi*2))
|
|
inkscape "$file" --export-filename="$base_folder-xxhdpi/$newfile" -C --export-dpi=$(($dpi*3))
|
|
inkscape "$file" --export-filename="$base_folder-xxxhdpi/$newfile" -C --export-dpi=$(($dpi*4))
|
|
}
|
|
|
|
dpi=96
|
|
|
|
|
|
base_folder="$mydir/../vector/src/main/res/drawable"
|
|
|
|
cp "$mydir/ic_launcher_sc.svg" "$mydir/riot_splash_sc.svg"
|
|
file="$mydir/riot_splash_sc.svg"
|
|
export_files
|
|
rm "$mydir/riot_splash_sc.svg"
|
|
|
|
file="$mydir/materialdesignicons/ic_status_bar_sc.svg"
|
|
export_files
|
|
|
|
dpi=48
|
|
cp "$mydir/ic_launcher_sc.svg" "$mydir/element_logo_sc.svg"
|
|
file="$mydir/element_logo_sc.svg"
|
|
export_files
|
|
rm "$mydir/element_logo_sc.svg"
|
|
|
|
|
|
base_folder="$mydir/../vector-app/src/main/res/mipmap"
|
|
dpi=24 # 96/4
|
|
|
|
file="$mydir/ic_launcher_sc.svg"
|
|
export_files
|
|
|
|
|
|
|
|
dpi=48 # 96/2
|
|
file="$mydir/ic_launcher_foreground_sc.svg"
|
|
export_files
|
|
|
|
|
|
## As this is just for API > 33, we don't need to export to png mipmaps, we can just directly use the drawable
|
|
# note that the monochrome svgs are also in this directory and could be directly converted to png mipmaps in the same
|
|
# way as ic_launcher_foreground_sc.svg above, but we're sticking with manually imported svg -> xml drawables
|
|
# for now to ensure high fidelity and sidestep issues with reproducibility of icon generation
|
|
monochrome_file_name="ic_launcher_monochrome_sc.xml"
|
|
monochrome_input_file="$mydir/$monochrome_file_name"
|
|
monochrome_output_dir="$mydir/../vector-app/src/main/res/drawable-anydpi-v26"
|
|
cp "$monochrome_input_file" "$monochrome_output_dir/$monochrome_file_name"
|
|
|
|
inkscape "$mydir/feature_image.svg" --export-filename="$mydir/../fastlane/metadata/android/en-US/images/featureGraphic.png" -C --export-dpi=96
|
|
inkscape "$mydir/store_icon.svg" --export-filename="$mydir/../fastlane/metadata/android/en-US/images/icon.png" -C --export-dpi=96
|