| # Editor # | |
| This is an experimental Editor layer that abstracts out SkShaper text layeout | |
| for easy embedding into an application. The Editor layer is agnostic about the | |
| operating system. | |
| +--------------------------------+ | |
| |Application | | |
| +-+----+-------------------------+ | |
| | | | |
| | | | |
| | +-v-------------------------+ | |
| | |Editor | | |
| | +-+----+--------------------+ | |
| | | | | |
| | | | | |
| | | +-v--------------------+ | |
| | | |SkShaper | | |
| | | +-+--------+-----------+ | |
| | | | | | |
| | | | | | |
| +-v----v----v--+ +-v-----------+ | |
| |Skia | |HarfBuzz, ICU| | |
| +--------------+ +-------------+ | |
| The Application layer must interact with the: | |
| * Windowing system | |
| * File system | |
| * Clipboard | |
| * Keyboard/mouse input. | |
| Try it out: | |
| tools/git-sync-deps | |
| bin/gn gen out/default | |
| ninja -C out/default editor | |
| out/default/editor resources/text/english.txt | |
| cat resources/text/*.txt > example.txt | |
| out/default/editor example.txt |