• Home
Name Date Size #Lines LOC

..--

FontMap.GDID03-May-2024294 129

FontMap.GnomeD03-May-2024260 97

FontMap.cppD03-May-20247 KiB288210

FontMap.hD03-May-20241.5 KiB6739

FontTableCache.cppD03-May-20242.1 KiB9263

FontTableCache.hD03-May-2024814 4020

GDIFontInstance.cppD03-May-20249.3 KiB403296

GDIFontInstance.hD03-May-20243.3 KiB157101

GDIFontMap.cppD03-May-20241 KiB4022

GDIFontMap.hD03-May-2024953 3921

GDIGUISupport.cppD03-May-2024569 236

GDIGUISupport.hD03-May-2024656 2911

GUISupport.hD03-May-2024597 2710

GnomeFontInstance.cppD03-May-20245.1 KiB202138

GnomeFontInstance.hD03-May-20243.5 KiB167103

GnomeFontMap.cppD03-May-20241.1 KiB4224

GnomeFontMap.hD03-May-2024957 3921

GnomeGUISupport.cppD03-May-2024781 3819

GnomeGUISupport.hD03-May-2024668 2911

LayoutSample.rcD03-May-20242.9 KiB11693

MakefileD03-May-20242.8 KiB10861

Makefile.inD03-May-20242.8 KiB10861

RenderingSurface.hD03-May-2024826 3113

Sample.txtD03-May-20241.7 KiB21

ScriptCompositeFontInstance.cppD03-May-20242.9 KiB10464

ScriptCompositeFontInstance.hD03-May-20246.1 KiB19267

Surface.cppD03-May-2024764 3120

Surface.hD03-May-2024391 158

UnicodeReader.cppD03-May-20243.8 KiB12088

UnicodeReader.hD03-May-2024690 3316

arraymem.hD03-May-2024522 239

cgnomelayout.cD03-May-20248.2 KiB343243

clayout.cD03-May-20249.5 KiB364260

cmaps.cppD03-May-20245 KiB207146

cmaps.hD03-May-20241.8 KiB9054

gdiglue.cppD03-May-20241.5 KiB8154

gdiglue.hD03-May-2024859 3921

gnomeglue.cppD03-May-20241.5 KiB7752

gnomeglue.hD03-May-2024862 4022

gnomelayout.cppD03-May-20248.2 KiB342238

gsupport.hD03-May-2024246 155

layout.cppD03-May-20249.5 KiB359257

layout.slnD03-May-20241.2 KiB2625

layout.vcprojD03-May-202410.8 KiB497496

layout.vcxprojD03-May-202414.6 KiB268267

layout.vcxproj.filtersD03-May-20243.2 KiB9595

paragraph.cppD03-May-20247.1 KiB279195

paragraph.hD03-May-20241.9 KiB8954

pflow.cD03-May-20249.1 KiB382270

pflow.hD03-May-2024816 3418

readme.htmlD03-May-20247.2 KiB162136

resource.hD03-May-2024738 2313

rsurface.cppD03-May-2024588 2513

rsurface.hD03-May-2024404 229

sfnt.hD03-May-20244.6 KiB220172

ucreader.cppD03-May-2024385 2110

ucreader.hD03-May-2024298 208

readme.html

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-2010 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  &lt;icu&gt;\source\samples\layout and build it.</p>
36
37  <p>On Linux systems, connect to &lt;top-build-dir&gt;/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  &lt;top-src-dir&gt;/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.freelang.net/fonts/index.php">freelang.net</a> and
57  click on the link for the Courier Thai font. This will download a .ZIP file.
58  Extract the Courpro.ttf font. On Windows, copy this font file to your
59  Fonts folder (note the name of the font after it is installed), 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. Download the font from <a href=
63  "http://www.ffonts.net/Raghindi.font.download">Raghindi</a>. On Linux, you can download the font into the
64  directory from which you'll run the layout demo. On Windows, you'll need to
65  install it in your Fonts folder.</p>
66
67  <p>There's still one more font to get, the Code2000 Unicode font. Go to James
68  Kass' <a href="http://www.code2000.net/">Unicode Support In Your
69  Browser</a> page and click on the link that says "Click Here to download
70  Code2000 shareware demo Unicode font." This will download a .ZIP file which
71  contains CODE2000.TTF and CODE2000.HTM. Expand this .ZIP file. If you're
72  going to run the layout demo on Linux, put the CODE2000.TTF file in the
73  directory from which you'll run the demo. On Windows, copy the font to your
74  fonts folder.</p>
75
76  <p><strong>Note:</strong> The Code2000 font is shareware. If you want to use
77  it for longer than a trial period, you should send a shareware fee to James.
78  Directions for how to do this are in CODE2000.HTM.</p>
79
80  <p>Be sure that your FontMap.GDI (on Windows) or FontMap.Gnome file (on Linux) contains accurate
81  font names for each script type.  For example, the following is a valid FontMap.GDI (assuming you have the correct fonts):
82  <br><br>DEVANAGARI: Raghindi<br>THAI: Courier MonoThai<br>DEFAULT: Code2000<br><br>Note that only the Code2000 default font is strictly necessary,
83  and that the other two can simply be commented out by a '#' if you do not wish to use them.</p>
84
85  <p>Also note that the FontMap and the sample.txt files have to be in the same directory as the layout executable.</p>
86
87  <p>That's it! Now all you have to do is run letest (CTRL+F5 in Visual C++, or
88  "./gnomelayout" in Linux)</p>
89
90  <h2>How can I customize the layout demo?</h2>
91
92  <p>The text that the layout demo displays is read from the file "Sample.txt."
93  You can change the text by editing this file using a Unicode-aware text
94  editor. (it is in UTF8 format with a BOM as the first character; the demo can
95  also read UTF16 and UTF32 format files) Remember that the text will be
96  displayed in a single paragraph; you can include CR and LF characters in the
97  text, but they will be ignored.</p>
98
99  <p>If you add scripts to the text other than Arabic, Devanagari, Latin or
100  Thai, you'll need to find a font which contains the characters in that
101  script, and add an entry to the FontMap file ("FontMap.GDI" on Windows,
102  "FontMap.Gnome" on Linux) This file contains a single entry per line. Each
103  entry contains a script name followed by a colon, and then a font name.</p>
104
105  <p>Here is the list of legal script names:</p>
106
107  <blockquote>
108    <tt>ARABIC</tt><br />
109    <tt>ARMENIAN</tt><br />
110    <tt>BENGALI</tt><br />
111    <tt>BOPOMOFO</tt><br />
112    <span style="font-family: monospace;">BUHID</span><br />
113    <tt>CANADIAN_ABORIGINAL</tt><br />
114    <tt>CHEROKEE</tt><br />
115    <tt>CYRILLIC</tt><br />
116    <tt>DESERET</tt><br />
117    <tt>DEVANAGARI</tt><br />
118    <tt>ETHIOPIC</tt><br />
119    <tt>GEORGIAN</tt><br />
120    <tt>GOTHIC</tt><br />
121    <tt>GREEK</tt><br />
122    <tt>GUJARATI</tt><br />
123    <tt>GURMUKHI</tt><br />
124    <tt>HAN</tt><br />
125    <tt>HANGUL</tt><br />
126    <span style="font-family: monospace;">HANUNOO</span><br />
127    <tt>HEBREW</tt><br />
128    <tt>HIRAGANA</tt><br />
129    <tt>KANNADA</tt><br />
130    <tt>KATAKANA</tt><br />
131    <tt>KHMER</tt><br />
132    <tt>LATIN</tt><br />
133    <tt>MALAYALAM</tt><br />
134    <tt>MONGOLIAN</tt><br />
135    <tt>MYANMAR</tt><br />
136    <tt>OGHAM</tt><br />
137    <tt>OLD_ITALIC</tt><br />
138    <tt>ORIYA</tt><br />
139    <tt>RUNIC</tt><br />
140    <tt>SINHALA</tt><br />
141    <tt>SYRIAC</tt><br />
142    <span style="font-family: monospace;">TAGALOG<br />
143    TAGBANWA</span><br />
144    <tt>TAMIL</tt><br />
145    <tt>TELUGU</tt><br />
146    <tt>THAANA</tt><br />
147    <tt>THAI</tt><br />
148    <tt>TIBETAN</tt><br />
149    <tt>YI<br /></tt>
150  </blockquote>
151
152  <p>You can also use the script name "DEFAULT" to represent all scripts which
153  you don't explicitly list in the FontMap file.</p>
154
155  <p>On Windows use the full name of the font as it appears in the Windows
156  Fonts folder (eg. "Times New Roman") On Linux, use the file name of the font
157  file (e.g. "Times.TTF") If you're running on Windows, you'll need to install
158  the new fonts in your Fonts folder. If you're running on Linux, put them in
159  the directory from which you'll run the demo.</p><br />
160</body>
161</html>
162