|
1 <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> |
|
2 <html> |
|
3 <head> |
|
4 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> |
|
5 <meta name="Copyright" content="Copyright (c) 2002, International Business Machines Corporation and others. All Rights Reserved."> |
|
6 <meta name="Author" content="Eric Mader"> |
|
7 <meta name="GENERATOR" content="Mozilla/4.72 [en] (Windows NT 5.0; U) [Netscape]"> |
|
8 <title>ScriptRun readme</title> |
|
9 </head> |
|
10 <body> |
|
11 |
|
12 <h2> |
|
13 What is scrptrun and srtest?</h2> |
|
14 The ICU LayoutEngine must be called with text in a single script. scrptrun.h |
|
15 and scrptrun.cpp implement the ScriptRun class, which can be used to find |
|
16 runs of text that is in a single script. It uses a basic iteration interface. |
|
17 <p>srtest is a little program that tests ScriptRun. You can use it as an |
|
18 example of how to use ScriptRun. Here's what the output should look like: |
|
19 <blockquote><font face="Courier New,Courier"><font size=-1>Script 'DEVANAGARI' |
|
20 from 0 to 9.</font></font> |
|
21 <br><font face="Courier New,Courier"><font size=-1>Script 'ARABIC' from |
|
22 9 to 17.</font></font> |
|
23 <br><font face="Courier New,Courier"><font size=-1>Script 'CYRILLIC' from |
|
24 17 to 25.</font></font> |
|
25 <br><font face="Courier New,Courier"><font size=-1>Script 'LATIN' from |
|
26 25 to 33.</font></font> |
|
27 <br><font face="Courier New,Courier"><font size=-1>Script 'HAN' from 33 |
|
28 to 35.</font></font> |
|
29 <br><font face="Courier New,Courier"><font size=-1>Script 'HIRAGANA' from |
|
30 35 to 41.</font></font> |
|
31 <br><font face="Courier New,Courier"><font size=-1>Script 'KATAKANA' from |
|
32 41 to 45.</font></font> |
|
33 <br><font face="Courier New,Courier"><font size=-1>Script 'DESERET' from |
|
34 45 to 53.</font></font></blockquote> |
|
35 |
|
36 <h2> |
|
37 How do I build scrptrun and srtest?</h2> |
|
38 To use the ScriptRun class in a Windows application, just include scrptrun.h |
|
39 and scrptrun.cpp right out of the <icu>\source\extra\scrptrun directory |
|
40 into your project. You'll also need to add the <icu>\source]extra\scrptrun |
|
41 directory to the "Additional include directories" section of the "Preprocessor" |
|
42 category on the "C/C++" tab in the project settings. |
|
43 <p>On UNIX systems the simplest thing to do is to just copy scrptrun.h |
|
44 and scrptrun.cpp into your source directory. If you want to use them from |
|
45 <icu>/source/extra/scrpturn, it's a bit trickier: the default dependency |
|
46 rules don't work on source files in a different directory. You need to |
|
47 add separate dependency rules for scrptrun.o and scrptrun.d. See <icu>/source/samples/layout/Makefile.in |
|
48 for an example of how to do this. You'll also have to add -I$(top_srcdir)/extra/scrptrun |
|
49 to your compiler flags so that the compiler can find scrptrun.h. If your |
|
50 application has to build on multiple UNIX platforms, it might be difficult |
|
51 to wirte dependency rules that will work correctly on all platforms. In |
|
52 that case, you're probably better off copying the scrpturn files to your |
|
53 source directory. |
|
54 <p>Building srtest is easy, on Windows build the srtest workspace in <icu>\source\extra\scrptrun. |
|
55 On UNIX, connect to <top-build-dir>/extra/scrptrun and do "make all" |
|
56 <h2> |
|
57 Notes</h2> |
|
58 |
|
59 <ul> |
|
60 <li> |
|
61 ScriptRun is based on <a href="http://www.unicode.org/unicode/reports/tr24/">Unicode |
|
62 Technical Report #24</a> but the implementation is not complete. In particular |
|
63 the support for paired punctuation is only a prototype. A complete implementation |
|
64 will be added to ICU in the future.</li> |
|
65 </ul> |
|
66 |
|
67 </body> |
|
68 </html> |