| <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" | 
 |     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | 
 |  | 
 | <html> | 
 | <head> | 
 |   <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> | 
 |   <meta name="COPYRIGHT" content= | 
 |   "Copyright (c) 2001-2010 IBM Corporation and others. All Rights Reserved." /> | 
 |   <meta name="Author" content="Eric Mader" /> | 
 |  | 
 |   <title>Readme file for the ICU LayoutEngine demo</title> | 
 | </head> | 
 |  | 
 | <body> | 
 |   <h2>What is the layout demo?</h2> | 
 |  | 
 |   <p>The layout demo displays a paragraph of text that is laid out using the | 
 |   LayoutEngine. There are two versions of this demo, "layout.exe" which runs on | 
 |   Windows 2000, and "gnomelayout" which runs on Linux. Both programs read a | 
 |   file containing the Unicode text to display, and a file that says which font | 
 |   to use to display each script.</p> | 
 |  | 
 |   <h2>How do I build the layout demo?</h2>First, you need to build ICU, | 
 |   including the LayoutEngine. | 
 |  | 
 |   <p>On Windows, the layout project should be listed as a dependency of all, so | 
 |   layout will build when you build all. If it doesn't for some reason, just | 
 |   select the layout project in the project toolbar and build it.</p> | 
 |  | 
 |   <p>On Linux systems, you need to add the "--enable-layout=yes" option when | 
 |   you invoke the runConfigureICU script. When you've done that, layout should | 
 |   build when you do "make all install"</p> | 
 |  | 
 |   <p>To build the demo on Windows, just open the layout project in | 
 |   <icu>\source\samples\layout and build it.</p> | 
 |  | 
 |   <p>On Linux systems, connect to <top-build-dir>/samples/layout and do | 
 |   "make all". To build the layout demo on Linux, you'll need the | 
 |   gnome-libs-devel and freetype-devel packages, which should be part of your | 
 |   Linux distribution. The demo uses the FreeType 1 library, and the make files | 
 |   assume that the FreeType header files are in /usr/include/freetype1, and that | 
 |   the freetype library is /usr/lib/libttf.so. This is how RedHat Linux 7.2 | 
 |   installs FreeType 1. If your system is different, you may need to add sym | 
 |   links to where the files are stored on your system, or modify | 
 |   <top-src-dir>/samples/layout/Makefile.in to reference the files | 
 |   correctly for your system.</p> | 
 |  | 
 |   <h2>How do I run the demo?</h2> | 
 |  | 
 |   <p>Before you can run the demo, you'll need to get the fonts it uses. For | 
 |   legal reasons, we can't include these fonts with ICU, but you can download | 
 |   them from the web. To do this, you'll need access to a computer running | 
 |   Windows. Here's how to get the fonts:</p> | 
 |  | 
 |   <p>First, download the Thai font. Go to <a href= | 
 |   "http://www.freelang.net/fonts/index.php">freelang.net</a> and | 
 |   click on the link for the Courier Thai font. This will download a .ZIP file. | 
 |   Extract the Courpro.ttf font. On Windows, copy this font file to your | 
 |   Fonts folder (note the name of the font after it is installed), on Linux, copy this font file to the directory from which | 
 |   you'll run the layout demo.</p> | 
 |  | 
 |   <p>Next is the Hindi font. Download the font from <a href= | 
 |   "http://www.ffonts.net/Raghindi.font.download">Raghindi</a>. On Linux, you can download the font into the | 
 |   directory from which you'll run the layout demo. On Windows, you'll need to | 
 |   install it in your Fonts folder.</p> | 
 |  | 
 |   <p>There's still one more font to get, the Code2000 Unicode font. Go to James | 
 |   Kass' <a href="http://www.code2000.net/">Unicode Support In Your | 
 |   Browser</a> page and click on the link that says "Click Here to download | 
 |   Code2000 shareware demo Unicode font." This will download a .ZIP file which | 
 |   contains CODE2000.TTF and CODE2000.HTM. Expand this .ZIP file. If you're | 
 |   going to run the layout demo on Linux, put the CODE2000.TTF file in the | 
 |   directory from which you'll run the demo. On Windows, copy the font to your | 
 |   fonts folder.</p> | 
 |  | 
 |   <p><strong>Note:</strong> The Code2000 font is shareware. If you want to use | 
 |   it for longer than a trial period, you should send a shareware fee to James. | 
 |   Directions for how to do this are in CODE2000.HTM.</p> | 
 |  | 
 |   <p>Be sure that your FontMap.GDI (on Windows) or FontMap.Gnome file (on Linux) contains accurate | 
 |   font names for each script type.  For example, the following is a valid FontMap.GDI (assuming you have the correct fonts): | 
 |   <br><br>DEVANAGARI: Raghindi<br>THAI: Courier MonoThai<br>DEFAULT: Code2000<br><br>Note that only the Code2000 default font is strictly necessary, | 
 |   and that the other two can simply be commented out by a '#' if you do not wish to use them.</p> | 
 |  | 
 |   <p>Also note that the FontMap and the sample.txt files have to be in the same directory as the layout executable.</p> | 
 |  | 
 |   <p>That's it! Now all you have to do is run letest (CTRL+F5 in Visual C++, or | 
 |   "./gnomelayout" in Linux)</p> | 
 |  | 
 |   <h2>How can I customize the layout demo?</h2> | 
 |  | 
 |   <p>The text that the layout demo displays is read from the file "Sample.txt." | 
 |   You can change the text by editing this file using a Unicode-aware text | 
 |   editor. (it is in UTF8 format with a BOM as the first character; the demo can | 
 |   also read UTF16 and UTF32 format files) Remember that the text will be | 
 |   displayed in a single paragraph; you can include CR and LF characters in the | 
 |   text, but they will be ignored.</p> | 
 |  | 
 |   <p>If you add scripts to the text other than Arabic, Devanagari, Latin or | 
 |   Thai, you'll need to find a font which contains the characters in that | 
 |   script, and add an entry to the FontMap file ("FontMap.GDI" on Windows, | 
 |   "FontMap.Gnome" on Linux) This file contains a single entry per line. Each | 
 |   entry contains a script name followed by a colon, and then a font name.</p> | 
 |  | 
 |   <p>Here is the list of legal script names:</p> | 
 |  | 
 |   <blockquote> | 
 |     <tt>ARABIC</tt><br /> | 
 |     <tt>ARMENIAN</tt><br /> | 
 |     <tt>BENGALI</tt><br /> | 
 |     <tt>BOPOMOFO</tt><br /> | 
 |     <span style="font-family: monospace;">BUHID</span><br /> | 
 |     <tt>CANADIAN_ABORIGINAL</tt><br /> | 
 |     <tt>CHEROKEE</tt><br /> | 
 |     <tt>CYRILLIC</tt><br /> | 
 |     <tt>DESERET</tt><br /> | 
 |     <tt>DEVANAGARI</tt><br /> | 
 |     <tt>ETHIOPIC</tt><br /> | 
 |     <tt>GEORGIAN</tt><br /> | 
 |     <tt>GOTHIC</tt><br /> | 
 |     <tt>GREEK</tt><br /> | 
 |     <tt>GUJARATI</tt><br /> | 
 |     <tt>GURMUKHI</tt><br /> | 
 |     <tt>HAN</tt><br /> | 
 |     <tt>HANGUL</tt><br /> | 
 |     <span style="font-family: monospace;">HANUNOO</span><br /> | 
 |     <tt>HEBREW</tt><br /> | 
 |     <tt>HIRAGANA</tt><br /> | 
 |     <tt>KANNADA</tt><br /> | 
 |     <tt>KATAKANA</tt><br /> | 
 |     <tt>KHMER</tt><br /> | 
 |     <tt>LATIN</tt><br /> | 
 |     <tt>MALAYALAM</tt><br /> | 
 |     <tt>MONGOLIAN</tt><br /> | 
 |     <tt>MYANMAR</tt><br /> | 
 |     <tt>OGHAM</tt><br /> | 
 |     <tt>OLD_ITALIC</tt><br /> | 
 |     <tt>ORIYA</tt><br /> | 
 |     <tt>RUNIC</tt><br /> | 
 |     <tt>SINHALA</tt><br /> | 
 |     <tt>SYRIAC</tt><br /> | 
 |     <span style="font-family: monospace;">TAGALOG<br /> | 
 |     TAGBANWA</span><br /> | 
 |     <tt>TAMIL</tt><br /> | 
 |     <tt>TELUGU</tt><br /> | 
 |     <tt>THAANA</tt><br /> | 
 |     <tt>THAI</tt><br /> | 
 |     <tt>TIBETAN</tt><br /> | 
 |     <tt>YI<br /></tt> | 
 |   </blockquote> | 
 |  | 
 |   <p>You can also use the script name "DEFAULT" to represent all scripts which | 
 |   you don't explicitly list in the FontMap file.</p> | 
 |  | 
 |   <p>On Windows use the full name of the font as it appears in the Windows | 
 |   Fonts folder (eg. "Times New Roman") On Linux, use the file name of the font | 
 |   file (e.g. "Times.TTF") If you're running on Windows, you'll need to install | 
 |   the new fonts in your Fonts folder. If you're running on Linux, put them in | 
 |   the directory from which you'll run the demo.</p><br /> | 
 | </body> | 
 | </html> |