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