1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 2 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 3 4<html> 5<head> 6 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii" /> 7 <meta name="COPYRIGHT" content= 8 "Copyright (c) 2001-2006 IBM Corporation and others. All Rights Reserved." /> 9 <meta name="Author" content="Eric Mader" /> 10 11 <title>Readme file for the ICU LayoutEngine demo</title> 12</head> 13 14<body> 15 <h2>What is the layout demo?</h2> 16 17 <p>The layout demo displays a paragraph of text that is laid out using the 18 LayoutEngine. There are two versions of this demo, "layout.exe" which runs on 19 Windows 2000, and "gnomelayout" which runs on Linux. Both programs read a 20 file containing the Unicode text to display, and a file that says which font 21 to use to display each script.</p> 22 23 <h2>How do I build the layout demo?</h2>First, you need to build ICU, 24 including the LayoutEngine. 25 26 <p>On Windows, the layout project should be listed as a dependency of all, so 27 layout will build when you build all. If it doesn't for some reason, just 28 select the layout project in the project toolbar and build it.</p> 29 30 <p>On Linux systems, you need to add the "--enable-layout=yes" option when 31 you invoke the runConfigureICU script. When you've done that, layout should 32 build when you do "make all install"</p> 33 34 <p>To build the demo on Windows, just open the layout project in 35 <icu>\source\samples\layout and build it.</p> 36 37 <p>On Linux systems, connect to <top-build-dir>/samples/layout and do 38 "make all". To build the layout demo on Linux, you'll need the 39 gnome-libs-devel and freetype-devel packages, which should be part of your 40 Linux distribution. The demo uses the FreeType 1 library, and the make files 41 assume that the FreeType header files are in /usr/include/freetype1, and that 42 the freetype library is /usr/lib/libttf.so. This is how RedHat Linux 7.2 43 installs FreeType 1. If your system is different, you may need to add sym 44 links to where the files are stored on your system, or modify 45 <top-src-dir>/samples/layout/Makefile.in to reference the files 46 correctly for your system.</p> 47 48 <h2>How do I run the demo?</h2> 49 50 <p>Before you can run the demo, you'll need to get the fonts it uses. For 51 legal reasons, we can't include these fonts with ICU, but you can download 52 them from the web. To do this, you'll need access to a computer running 53 Windows. Here's how to get the fonts:</p> 54 55 <p>First, download the Thai font. Go to <a href= 56 "http://www.into-asia.com/thai_language/thaifont/">into-asia.com</a> and 57 click on the link for the Angsana font. This will download a .ZIP file. 58 Extract the font file, angsd___.ttf On Windows, copy this font file to your 59 Fonts folder, on Linux, copy this font file to the directory from which 60 you'll run the layout demo.</p> 61 62 <p>Next is the Hindi font. Go to the NCST site and download <a href= 63 "http://rohini.ncst.ernet.in/indix/download/font/raghu.ttf">raghu.ttf</a>. Be 64 sure to look at the <a href= 65 "http://rohini.ncst.ernet.in/indix/download/font/README">README</a> file 66 before you download the font. On Linux, you can download raghu.ttf into the 67 directory from which you'll run the layout demo. On Windows, you'll need to 68 install it in your Fonts folder.</p> 69 70 <p>There's still one more font to get, the Code2000 Unicode font. Go to James 71 Kass' <a href="http://www.code2000.net/">Unicode Support In Your 72 Browser</a> page and click on the link that says "Click Here to download 73 Code2000 shareware demo Unicode font." This will download a .ZIP file which 74 contains CODE2000.TTF and CODE2000.HTM. Expand this .ZIP file. If you're 75 going to run the layout demo on Linux, put the CODE2000.TTF file in the 76 directory from which you'll run the demo. On Windows, copy the font to your 77 fonts folder.</p> 78 79 <p><strong>Note:</strong> The Code2000 font is shareware. If you want to use 80 it for longer than a trial period, you should send a shareware fee to James. 81 Directions for how to do this are in CODE2000.HTM.</p> 82 83 <p>That's it! Now all you have to do is run letest (CTRL+F5 in Visual C++, or 84 "/gnomelayout" in Linux)</p> 85 86 <h2>How can I customize the layout demo?</h2> 87 88 <p>The text that the layout demo displays is read from the file "Sample.txt." 89 You can change the text by editing this file using a Unicode-aware text 90 editor. (it is in UTF8 format with a BOM as the first character; the demo can 91 also read UTF16 and UTF32 format files) Remember that the text will be 92 displayed in a single paragraph; you can include CR and LF characters in the 93 text, but they will be ignored.</p> 94 95 <p>If you add scripts to the text other than Arabic, Devanagari, Latin or 96 Thai, you'll need to find a font which contains the characters in that 97 script, and add an entry to the FontMap file ("FontMap.GDI" on Windows, 98 "FontMap.Gnome" on Linux) This file contains a single entry per line. Each 99 entry contains a script name followed by a colon, and then a font name.</p> 100 101 <p>Here is the list of legal script names:</p> 102 103 <blockquote> 104 <tt>ARABIC</tt><br /> 105 <tt>ARMENIAN</tt><br /> 106 <tt>BENGALI</tt><br /> 107 <tt>BOPOMOFO</tt><br /> 108 <span style="font-family: monospace;">BUHID</span><br /> 109 <tt>CANADIAN_ABORIGINAL</tt><br /> 110 <tt>CHEROKEE</tt><br /> 111 <tt>CYRILLIC</tt><br /> 112 <tt>DESERET</tt><br /> 113 <tt>DEVANAGARI</tt><br /> 114 <tt>ETHIOPIC</tt><br /> 115 <tt>GEORGIAN</tt><br /> 116 <tt>GOTHIC</tt><br /> 117 <tt>GREEK</tt><br /> 118 <tt>GUJARATI</tt><br /> 119 <tt>GURMUKHI</tt><br /> 120 <tt>HAN</tt><br /> 121 <tt>HANGUL</tt><br /> 122 <span style="font-family: monospace;">HANUNOO</span><br /> 123 <tt>HEBREW</tt><br /> 124 <tt>HIRAGANA</tt><br /> 125 <tt>KANNADA</tt><br /> 126 <tt>KATAKANA</tt><br /> 127 <tt>KHMER</tt><br /> 128 <tt>LATIN</tt><br /> 129 <tt>MALAYALAM</tt><br /> 130 <tt>MONGOLIAN</tt><br /> 131 <tt>MYANMAR</tt><br /> 132 <tt>OGHAM</tt><br /> 133 <tt>OLD_ITALIC</tt><br /> 134 <tt>ORIYA</tt><br /> 135 <tt>RUNIC</tt><br /> 136 <tt>SINHALA</tt><br /> 137 <tt>SYRIAC</tt><br /> 138 <span style="font-family: monospace;">TAGALOG<br /> 139 TAGBANWA</span><br /> 140 <tt>TAMIL</tt><br /> 141 <tt>TELUGU</tt><br /> 142 <tt>THAANA</tt><br /> 143 <tt>THAI</tt><br /> 144 <tt>TIBETAN</tt><br /> 145 <tt>YI<br /></tt> 146 </blockquote> 147 148 <p>You can also use the script name "DEFAULT" to represent all scripts which 149 you don't explicitly list in the FontMap file.</p> 150 151 <p>On Windows use the full name of the font as it appears in the Windows 152 Fonts folder (eg. "Times New Roman") On Linux, use the file name of the font 153 file (e.g. "Times.TTF") If you're running on Windows, you'll need to install 154 the new fonts in your Fonts folder. If you're running on Linux, put them in 155 the directory from which you'll run the demo.</p><br /> 156</body> 157</html> 158