Free

Free coded apps to suit all. No sign up, no email, usable offline, updates when I can, feedback welcome. Send feedback

Getting started

Making icons on a Mac or Linux PC with ICON by Zaweba

ICON by Zaweba also runs on Mac and Linux with the same engine, adding .icns and Linux icon-set output and a managed editor for Windows program icons.

Making icons on a Mac or Linux PC with ICON by Zaweba

Icons are rarely made for one system alone. A website's favicons are seen on every kind of computer and phone, a program built on Linux may well end up on Windows, and a Mac developer still needs an .ico now and then. So ICON by Zaweba is not only a Windows app: there is a Mac and Linux version too.

It shares the same engine as the Windows version, so the icons it makes are built the same way. On top of that it adds the formats those systems use themselves.

The same engine underneath

The parts that matter most in an icon tool are the ones that resize the picture and write the files, and those are shared. Loading a picture, previewing it, fitting it to a square with Contain or Cover, saving a multi-size .ico, and generating a website favicon set with its manifest and head tags all come from the same code on every system.

That has a practical upside. If you work on a Mac at home and a Windows PC at work, the favicon set you make on one matches the one you'd make on the other. The sizes, the file names and the head-tags snippet are the same, so a site's files don't change depending on which machine you happened to use.

Mac icons with .icns

Mac applications use their own icon format, .icns, rather than the Windows .ico. The Mac and Linux version of ICON can write .icns output, so the same square picture that gives you a Windows icon and a set of favicons can also give you the icon a Mac app bundle expects.

For anyone who builds small tools for more than one system, this saves keeping two or three different icon programs around. Load the picture once, check the fit in the preview, and save each format you need from the same starting point.

Linux icon sets

Linux desktops look for application icons in a set of sizes rather than one file holding them all. ICON's Mac and Linux version writes a Linux icon set for that, alongside the .ico and .icns options. If you package a program for Linux, or simply want a launcher on your own desktop to have a proper icon, you can make the files from the same picture you used everywhere else.

Windows program icons, from another system

On Windows, ICON can write an icon into the resources of an .exe or .dll you own. The Mac and Linux version has a managed program-icon editor for Windows programs too, so you can set the icon of a Windows program you've built without switching machines. That is useful if you cross-build Windows releases on a Mac or Linux PC and want the finished program to carry its own icon.

The same care applies as on Windows. Only change programs that belong to you, keep a copy of the original, and remember that a signed program will need signing again after its resources change.

Getting a good result on any system

Start from a large, square picture with clean edges. Every format, from a 16 pixel favicon to a big .icns, is made by scaling down, and a sharp source scales down far better than a small or blurred one.

Use the preview. The checkerboard shows transparency, so you can see whether Contain has left margins or Cover has cropped something you wanted to keep.

Keep your outputs together. A folder per project with the .ico, the .icns, the Linux set and the favicon folder means the next release, on any system, starts from files you already trust.

Like the Windows version, it is free software and works offline. Your picture stays on your computer, which matters when the logo is for a client or a product that hasn't been announced yet.

For anyone moving between systems, the point is simple: one tool, one picture and one way of working, whichever computer is in front of you. ICON by Zaweba gives Mac and Linux users the same icons and favicons Windows users get, plus the formats their own systems want.