In my article to configure App Icons for Xamarin apps, I mentioned about a tool ‘MakeAppIcon‘ for creating app icons for mobile apps. However, as I mentioned in the article too, it didn’t support creating icon images for UWP apps.
Then my Twitter friend and Xamarin MVP Adam Pedley told me about this awesome open source tool Downsize to create / manage app icons. However, it’s a command line tool and I don’t like command line tools (that’s just me). Another issue is that this also doesn’t support UWP icon images. I thought why not use the code of DownSize and create my own tool for creating mobile app icon images.
So people, presenting to you ReSizer my nifty small GUI based tool to create App Icons and yes it supports UWP Icons too.
Using Resizer is pretty simple - just download the ReadyExecutables folder from the repository and launch the ReSizer.exe, you will get the following screen. Click on Select Base Image button (as highlighted in Image) to chose the base image which will be used to create rest of the images. It can be of any size, however, I suggest you use the biggest size possible like 1536 X 1536 to get better images.
Once you have selected the image, its path will appear in place of Base Image Path Value like the below Image:
Then, select check OS checkbox whose app icons you want to create, you will have to check at-least one checkbox in order to create an app icon, else the app will show you an error message.
Once OS check boxes are selected, click on Re-Size button (highlighted in the below image) to create the app icons.
And you will get a success message like the following when icons are created.
You can see the folder Paths of the newly created app icons once you dismiss the success message.
Add new sizes:
The application uses JSON files containing the different app icon sizes present in SizeJsons folder highlighted in the below image:
Although I have tried to add all the sizes currently present in Xamarin.iOS
, Xamarin.Android
and Xamarin.UWP
application template, if you want to add a new size, you just need to open the folder and update the JSON file of respective OS
Although I have tried to make this tool simple and easy to use but it might be missing feature X, or platform Y. If you want something that it can’t currently provide, I love pull requests. If it’s a bigger change, you can also create a new tool using this code like I did with this tool . The complete code of the tool along with the ReadyExecutables folder is present on Github.
Happy coding!