wxWidgets/docs/tech/tn0009.htm

60 lines
2.1 KiB
HTML
Raw Normal View History

<HTML>
<HEAD>
<TITLE>Creating and converting icons</TITLE>
</HEAD>
<BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
<font face="Arial, Lucida Sans, Helvetica">
<a name="top"></a>
<table align=center width=100% border=4 cellpadding=5 cellspacing=0>
<tr>
<td bgcolor="#660000" align=left colspan=2>
<font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
Creating and converting icons
</font>
</td>
</tr>
</table>
<P>
Icons are bitmaps that may contain transparency information. Under X, icons are
usually created from XPM files, which may be loaded from a file or created from
data embedded in a C++ source file.<P>
Under Windows, icon files (extension .ico) may contain multiple icons for different sizes and colour
depths, and can be loaded from a file or loaded from the Windows resources compiled
into the executable.<P>
You can decide to use only XPMs on Windows and Unix, or you could use XPMs on Unix and
Windows icons under Windows -- the latter will require some #ifdefs in your code or use of the wxICON macro.<P>
If you are using a compiler such as Borland C++, Visual C++ or Watcom C++, you
can use the provided icon editor. However, if using Cygwin or Mingw32, there
is no icon editor so you must obtain one separately, such as <a href="http://hotfiles.zdnet.com/cgi-bin/texis/swlib/hotfiles/info.html?fcode=00165P">IconEdit32</a>.<P>
To convert from XPM to BMP (which can be loaded or pasted into an icon editor to save as an ICO file),
you can use Vadim Zeitlin's <a href="ftp://biolpc22.york.ac.uk/pub/support/xpm2bmp.exe">xpm2bmp.exe</a> utility.
To convert from BMP to XPM, you can use <a href="ftp://biolpc22.york.ac.uk/pub/support/bmp2xpm.exe">bmp2xpm.exe</a>
which is actually the old wxWidgets 1.68 utility, xpmshow. You will have to edit the resulting
file since the full path is used as the variable name, plus you may wish to specify a transparent colour e.g.:<P>
<pre>
" s None c None",
</pre>
This will indicate that the space character will be taken as the transparent colour throughout the image.<P>
<!--
Author: JS
-->
</font>
</body>
</html>