43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
| # 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
 |