CINXE.COM
BabelStone : BabelMap (Unicode Character Map for Windows)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta name="description" lang="en" content="BabelMap is a free Unicode character map application for Windows" /> <link rel="stylesheet" type="text/css" href="../BabelStone.css" /> <title>BabelStone : BabelMap (Unicode Character Map for Windows)</title> </head> <body> <h1>BabelMap (Unicode Character Map for Windows)</h1> <p class="centre italic mid">— Supporting Unicode since 2002 —</p> <hr class="top" /> <br/> <p class="centre"><a href="#Download"><img src="Images/BabelMap_14_3.png" border="0" width="750px" title="Screenshot of BabelMap version 14.0.0.3" alt="" /></a></p> <br/> <hr class="mid" /> <h2 id="Overview">Overview</h2> <p>BabelMap is a free character map application for Windows developed by Andrew West that allows you to browse through the entire Unicode character repertoire of nearly 155,000 characters, or search for a particular character by name or by code point. Characters can then be copied to the clipboard for use in any Unicode-aware application. It also provides many useful <a href="BabelMap_Features.html">features and special utilities</a>. BabelMap was first released in 2002 (Unicode 3.2), and is updated for each new release of the Unicode Standard. The current version supports <a href="http://www.unicode.org/versions/Unicode16.0.0/">Unicode 16.0</a> which was released on 10 September 2024.</p> <br/> <hr class="mid" /> <h2 id="Features">Summary of Features</h2> <p>These are some of the key features of BabelMap. For more information see the <a href="BabelMap_Help.html">BabelMap Help</a> pages.</p> <ul> <li>Browse through the entire Unicode code space block by block and character by character.</li> <li>Tabbed display for Unicode planes (<span title="Basic Multilingual Plane">BMP</span>, <span title="Supplementary Multilingual Plane">SMP</span>, <span title="Supplementary Ideographic Plane">SIP</span>, <span title="Tertiary Ideographic Plane">TIP</span>, <span title="Supplementary Special-purpose Plane">SSP</span>, <span title="Supplementary Private Use Area-A">SPUA-A</span>, <span title="Supplementary Private Use Area-B">SPUA-B</span>), with options to display unassigned planes 4 through 13, and show unassigned ranges within assigned planes.</li> <li>Display all characters using a single font, or define a composite font with different fonts used to display different Unicode blocks.</li> <li>Two rendering modes: Glyph mode renders characters as individual glyphs, with no shaping or joining behaviour, and glyphs laid out in logical order; Text mode uses the standard Windows rendering system to render characters with appropriate shaping and joining behaviour, and with appropriate directional layout (NB shaping and joining support for particular scripts may vary depending upon the version of Windows BabelMap is run on).</li> <li>Supports polychromatic glyphs with COLR/CPAL format fonts. Check the "Colour Glyphs" checkbox below the edit buffer to enable display of polychromatic glyphs for single characters and characters sequences where supported by the selected font.</li> <li>Search for any Unicode character by character name; or go to a specified code point.</li> <li>Paste any unknown Unicode character into the edit buffer and hit F2 to locate the character.</li> <li>Edit buffer supports drag-and drop editing and the user-defined composite font.</li> <li>Color code characters in the character grid by Unicode properties or version or script.</li> <li>Advanced character search utility which allows you to find all Unicode characters that match specified criteria.</li> <li>Character lookup tools for finding Han (CJKV) characters by radical/stroke or by Mandarin or Cantonese readings.</li> <li>Character lookup tool for finding Han characters by Zhuang readings.</li> <li>Character lookup tool for finding Yi (Nuosu) characters by radical/stroke.</li> <li>Character lookup tool for finding Tangut characters by reference code.</li> <li>Various tools providing detailed information about Unicode versions, scripts, planes, blocks.</li> <li>Emoji data tool that lists data about all Unicode-defined emoji, and select single or composite emoji.</li> <li>Show all Unicode properties for the selected character.</li> <li>Show additional non-Unicode data for Han (CJKV) and Tangut characters.</li> <li>Show summary information for all fonts installed on your system.</li> <li>Show detailed information about any font on your system, including coverage of Unicode characters.</li> <li>Export glyphs for any font to file as images.</li> <li>Experimental test framework for OpenType fonts.</li> </ul> <br/> <hr class="mid" /> <h2 id="Technical">Technical Details</h2> <p>BabelMap and BabelPad are Windows desktop applications written in C++ using the <a href="https://en.wikipedia.org/wiki/Microsoft_Foundation_Class_Library" title="Microsoft Foundation Class">MFC</a> architecture. The two applications share a common code base, and the release versions are built using Microsoft <a href="https://en.wikipedia.org/wiki/Visual_Studio" title="Visual Studio">Visual Studio 2008</a> (I cannot upgrade to a more recent version as applications built using later versions of Visual Studio do not run on Windows XP or earlier, and I am committed to supporting Windows 2000 upwards for as long as my old laptop keeps going). Up to 2008 (Unicode 5.1), BabelMap and BabelPad were released in two versions, one designed to run on Windows 95/98/Me (which have no native support for Unicode, but can nevertheless display all Unicode characters if you try hard enough), and one more fully-functional version that only runs on Windows 2000 and later. Support for Windows 95/98/Me was discontinued in 2009 after I lost access to my test PC.</p> <p>BabelMap and BabelPad utilize the fonts installed on your computer to display Unicode text, and so can only display Unicode characters that are available in fonts on your system (this is a deliberate design limitation). In text mode (BabelPad edit view and BabelMap edit buffer) text is rendered using the <a href="https://en.wikipedia.org/wiki/Uniscribe" title="Uniscribe">Uniscribe</a> (usp10) <span title="Application Programming Interface">API</span>, specifically the ScriptStringOut() function. This ensures that no automatic font substitution ever occurs, and the user-selected or user-configured font is always that font used to display the text. In glyph mode (BabelPad edit view and BabelMap edit buffer) and within the character map grid, all characters are displayed using the WinGDI function ExtTextOutW(), but with characters selected by font glyph index rather than their Unicode value (this means that the software first parses the selected font's <a href="https://learn.microsoft.com/en-us/typography/opentype/spec/cmap" title="Character to Glyph Index Mapping Table">cmap</a> table to obtain the desired glyph index of each character to be displayed). As the software relies on Windows to render Unicode text (when in text mode), support for complex scripts may vary for the same version of BabelMap or BabelPad depending on the version of the Windows operating system the software is running on. Some complex scripts that have only been added to the Unicode Standard in recent years may not display correctly (i.e. no expected shaping or joining behaviour) when the software is run on an old version of Windows (e.g. XP, Vista, 7), but will display correctly when the software is run on a current version of Windows (e.g. 10 or 11). Therefore, for optimal Unicode support it is best to run BabelMap and BabelPad on a recent version of Windows.</p> <br/> <hr class="mid" /> <h2 id="Download">Download</h2> <p>BabelMap is <b>free</b> to download and use for personal or commercial purposes. This free version is fully-featured, with no functional or time limitations, no adverts, no in-app purchases, and no malicious features. BabelMap is distributed as a single executable file (no installer). Simply download and unzip the single executable file (BabelMap.exe), and then run it from the desired location on your computer (recommended to run it from a subfolder of the "Program Files" directory). BabelMap runs on Windows 2000, XP, Vista, 7, 8, 8.1, 10, and 11. For support, bug reports, or feature requests, please email me (Andrew West) at the email address given in BabelMap's About box. Please do not download BabelMap from any site other than babelstone.co.uk. I do not provide support for third-party distributions of BabelMap, such as BabelMap Portable from PortableApps.com.</p> <br/> <table class="solid" width="100%"> <tr> <td class="sl">BabelMap</td> <td class="sl">Version 16.0.0.5 (2024-10-06)</td> <td class="sl"><a href="Download/BabelMap.zip" title="BabelMap.zip containing BabelMap.exe">Download</a></td> <td class="sl"><a href="BabelMap_16.html#V16_0_0_5">Release notes</a></td> </tr> <tr> <td class="sl"><a href="BabelPad.html">BabelPad</a></td> <td class="sl">Version 16.0.0.5 (2024-10-06)</td> <td class="sl"><a href="Download/BabelPad.zip" title="BabelPad.zip containing BabelPad.exe">Download</a></td> <td class="sl"><a href="BabelPad_16.html#V16_0_0_5">Release notes</a></td> </tr> </table> <br/> <p>The latest version of BabelMap runs on Windows 2000 or later. An unsupported old version of BabelMap (supporting Unicode 5.1) that runs on Windows 95/98/Me is available for download <a href="Download/BabelMap9X.zip" title="BabelMap9X.zip">here</a>.</p> <p>An unsupported version of BabelMap (supporting <a href="http://www.unicode.org/announcements/pr-4.1-french.html" title="Tableaux de caractères Unicode 4.1.0 en français">Unicode 4.1</a>) that is localized for French, with <a href="http://www.unicode.org/fr/" title="Unicode, section française">French character names and Unicode data</a>, is available for download <a href="Download/BabelMapFR.exe" title="BabelMapFR.exe">here</a>. A version of BabelMap Online (supporting Unicode 7.0) with French interface and French Unicode data is available <a href="http://www.babelstone.co.uk/Unicode/babelmap_fr.html" title="BabelMap Online en français">here</a>. My great thanks to Patrick Andries, Alain LaBonté, and Francois Yergeau for creating the French Unicode data and for help in translating the user interface for BabelMap and BabelMap Online.</p> <br/> <hr class="toe" /> <p class="centre"><a href="BabelMap_Help.html">BabelMap Help Pages</a></p> <p class="centre"><a href="BabelPad.html">BabelPad</a></p> <p class="centre"><a href="../index.html">BabelStone Home Page</a></p> </body> </html>