Resize MacOS icons and script their creation
Creates a script that will fomat the MacOS icons at 80% of the total size in line with Apple's guidelines. Script requires Inkscape 1.0 and png2icns (available on Linux boxen) Fixes https://gitlab.com/kicad/code/kicad/issues/7977
This commit is contained in:
parent
ad8acd328c
commit
e7d8b1a975
Binary file not shown.
|
@ -0,0 +1,64 @@
|
||||||
|
#!/bin/bash
|
||||||
|
#
|
||||||
|
# make macos icons using Inkscape
|
||||||
|
|
||||||
|
mkdir macos_tmp
|
||||||
|
# convert .svg files into .png files
|
||||||
|
|
||||||
|
SIZES="16x16
|
||||||
|
32x32
|
||||||
|
128x128
|
||||||
|
256x256
|
||||||
|
512x512
|
||||||
|
1024x1024"
|
||||||
|
|
||||||
|
ICONS="bitmap2component
|
||||||
|
eeschema
|
||||||
|
gerbview
|
||||||
|
kicad
|
||||||
|
pagelayout_editor
|
||||||
|
pcbcalculator
|
||||||
|
pcbnew"
|
||||||
|
|
||||||
|
|
||||||
|
for pgm in $ICONS
|
||||||
|
do
|
||||||
|
output=""
|
||||||
|
|
||||||
|
for size in $SIZES
|
||||||
|
do
|
||||||
|
sz=${size%x*}
|
||||||
|
|
||||||
|
echo -e '\E[0;32m'"\nMaking the applications icons with size $size."
|
||||||
|
|
||||||
|
# MacOS wants icons with 10% clearance on each side
|
||||||
|
let "sub_sz = $sz * 8 / 10"
|
||||||
|
|
||||||
|
# Use specialized icons for smaller sizes to keep pixel alignment
|
||||||
|
if [ $sz -le 32 ]
|
||||||
|
then
|
||||||
|
inkscape sources/light/icon_${pgm}_${sz}.svg -o macos_tmp/${pgm}_small_${sz}px.png -w ${sub_sz} -h ${sub_sz} --export-area-snap
|
||||||
|
else
|
||||||
|
inkscape sources/light/icon_${pgm}.svg -o macos_tmp/${pgm}_small_${sz}px.png -w ${sub_sz} -h ${sub_sz} --export-area-snap
|
||||||
|
fi
|
||||||
|
|
||||||
|
convert macos_tmp/${pgm}_small_${sz}px.png -size $size xc:transparent +swap -gravity center -composite macos_tmp/${pgm}_${sz}px.png
|
||||||
|
|
||||||
|
output+="macos_tmp/${pgm}_${sz}px.png "
|
||||||
|
done
|
||||||
|
|
||||||
|
if [ ${pgm} == "pcbcalculator" ]
|
||||||
|
then
|
||||||
|
# mismatch in the pcbcalculator icon names
|
||||||
|
png2icns ../pcb_calculator/pcb_calculator.icns ${output}
|
||||||
|
elif [ ${pgm} == "bitmap2component" ]
|
||||||
|
then
|
||||||
|
#bitmap2component does not have associated documents
|
||||||
|
png2icns ../${pgm}/${pgm}.icns ${output}
|
||||||
|
else
|
||||||
|
png2icns ../${pgm}/${pgm}.icns ${output}
|
||||||
|
cp ../${pgm}/${pgm}.icns ../${pgm}/${pgm}_doc.icns
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
rm -rf macos_tmp
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
kicad/kicad.icns
BIN
kicad/kicad.icns
Binary file not shown.
Binary file not shown.
|
@ -62,15 +62,15 @@ endif()
|
||||||
|
|
||||||
if( APPLE )
|
if( APPLE )
|
||||||
# setup bundle
|
# setup bundle
|
||||||
set( PL_EDITOR_RESOURCES pl_editor.icns pl_editor_doc.icns )
|
set( PL_EDITOR_RESOURCES pagelayout_editor.icns pagelayout_editor_doc.icns )
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pl_editor.icns" PROPERTIES
|
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pagelayout_editor.icns" PROPERTIES
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
MACOSX_PACKAGE_LOCATION Resources
|
||||||
)
|
)
|
||||||
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pl_editor_doc.icns" PROPERTIES
|
set_source_files_properties( "${CMAKE_CURRENT_SOURCE_DIR}/pagelayout_editor_doc.icns" PROPERTIES
|
||||||
MACOSX_PACKAGE_LOCATION Resources
|
MACOSX_PACKAGE_LOCATION Resources
|
||||||
)
|
)
|
||||||
set( MACOSX_BUNDLE_ICON_FILE pl_editor.icns )
|
set( MACOSX_BUNDLE_ICON_FILE pagelayout_editor.icns )
|
||||||
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad-pcb.kicad )
|
set( MACOSX_BUNDLE_GUI_IDENTIFIER org.kicad.kicad )
|
||||||
set( MACOSX_BUNDLE_NAME pl_editor )
|
set( MACOSX_BUNDLE_NAME pl_editor )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue