]> git.saurik.com Git - wxWidgets.git/blob - docs/tech/tn0009.htm
use buffered DC again
[wxWidgets.git] / docs / tech / tn0009.htm
1 <HTML>
2
3 <HEAD>
4 <TITLE>Creating and converting icons</TITLE>
5 </HEAD>
6
7 <BODY BGCOLOR=#FFFFFF TEXT=#000000 LINK=#FF0000 VLINK=#000000>
8
9 <font face="Arial, Lucida Sans, Helvetica">
10
11 <a name="top"></a>
12
13 <table align=center width=100% border=4 cellpadding=5 cellspacing=0>
14 <tr>
15 <td bgcolor="#660000" align=left colspan=2>
16 <font size=+1 face="Arial, Lucida Sans, Helvetica" color="#FFFFFF">
17 Creating and converting icons
18 </font>
19 </td>
20 </tr>
21 </table>
22
23 <P>
24
25 Icons are bitmaps that may contain transparency information. Under X, icons are
26 usually created from XPM files, which may be loaded from a file or created from
27 data embedded in a C++ source file.<P>
28
29 Under Windows, icon files (extension .ico) may contain multiple icons for different sizes and colour
30 depths, and can be loaded from a file or loaded from the Windows resources compiled
31 into the executable.<P>
32
33 You can decide to use only XPMs on Windows and Unix, or you could use XPMs on Unix and
34 Windows icons under Windows -- the latter will require some #ifdefs in your code or use of the wxICON macro.<P>
35
36 If you are using a compiler such as Borland C++, Visual C++ or Watcom C++, you
37 can use the provided icon editor. However, if using Cygwin or Mingw32, there
38 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>
39
40 To convert from XPM to BMP (which can be loaded or pasted into an icon editor to save as an ICO file),
41 you can use Vadim Zeitlin's <a href="ftp://biolpc22.york.ac.uk/pub/support/xpm2bmp.exe">xpm2bmp.exe</a> utility.
42 To convert from BMP to XPM, you can use <a href="ftp://biolpc22.york.ac.uk/pub/support/bmp2xpm.exe">bmp2xpm.exe</a>
43 which is actually the old wxWidgets 1.68 utility, xpmshow. You will have to edit the resulting
44 file since the full path is used as the variable name, plus you may wish to specify a transparent colour e.g.:<P>
45
46 <pre>
47 " s None c None",
48 </pre>
49
50 This will indicate that the space character will be taken as the transparent colour throughout the image.<P>
51
52 <!--
53 Author: JS
54 Version: $Id$
55 -->
56
57 </font>
58
59 </body>
60 </html>