1cb93a386Sopenharmony_ci# Editor #
2cb93a386Sopenharmony_ci
3cb93a386Sopenharmony_ciThis is an experimental Editor layer that abstracts out SkShaper text layeout
4cb93a386Sopenharmony_cifor easy embedding into an application.  The Editor layer is agnostic about the
5cb93a386Sopenharmony_cioperating system.
6cb93a386Sopenharmony_ci
7cb93a386Sopenharmony_ci    +--------------------------------+
8cb93a386Sopenharmony_ci    |Application                     |
9cb93a386Sopenharmony_ci    +-+----+-------------------------+
10cb93a386Sopenharmony_ci      |    |
11cb93a386Sopenharmony_ci      |    |
12cb93a386Sopenharmony_ci      |  +-v-------------------------+
13cb93a386Sopenharmony_ci      |  |Editor                     |
14cb93a386Sopenharmony_ci      |  +-+----+--------------------+
15cb93a386Sopenharmony_ci      |    |    |
16cb93a386Sopenharmony_ci      |    |    |
17cb93a386Sopenharmony_ci      |    |  +-v--------------------+
18cb93a386Sopenharmony_ci      |    |  |SkShaper              |
19cb93a386Sopenharmony_ci      |    |  +-+--------+-----------+
20cb93a386Sopenharmony_ci      |    |    |        |
21cb93a386Sopenharmony_ci      |    |    |        |
22cb93a386Sopenharmony_ci    +-v----v----v--+   +-v-----------+
23cb93a386Sopenharmony_ci    |Skia          |   |HarfBuzz, ICU|
24cb93a386Sopenharmony_ci    +--------------+   +-------------+
25cb93a386Sopenharmony_ci
26cb93a386Sopenharmony_ciThe Application layer must interact with the:
27cb93a386Sopenharmony_ci
28cb93a386Sopenharmony_ci  * Windowing system
29cb93a386Sopenharmony_ci  * File system
30cb93a386Sopenharmony_ci  * Clipboard
31cb93a386Sopenharmony_ci  * Keyboard/mouse input.
32cb93a386Sopenharmony_ci
33cb93a386Sopenharmony_ciTry it out:
34cb93a386Sopenharmony_ci
35cb93a386Sopenharmony_ci    tools/git-sync-deps
36cb93a386Sopenharmony_ci    bin/gn gen out/default
37cb93a386Sopenharmony_ci    ninja -C out/default editor
38cb93a386Sopenharmony_ci
39cb93a386Sopenharmony_ci    out/default/editor resources/text/english.txt
40cb93a386Sopenharmony_ci
41cb93a386Sopenharmony_ci    cat resources/text/*.txt > example.txt
42cb93a386Sopenharmony_ci    out/default/editor example.txt
43