Skip to content

Commit

Permalink
Updated README.md file...
Browse files Browse the repository at this point in the history
  • Loading branch information
mta452 authored Nov 13, 2016
1 parent 0767606 commit 9bbaaa1
Showing 1 changed file with 56 additions and 7 deletions.
63 changes: 56 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,68 @@ SheenFigure aims to implement the advanced typographic tables of OpenType specif

Here are some of the advantages of SheenFigure.

* Object based.
* Designed to be thread safe.
* Lightweight API for interaction.
* Clear differentiation of public and private API.
* Thoroughly tested.
* Object based
* Designed to be thread safe
* Lightweight API for interaction
* Clear differentiation of public and private API
* Thoroughly tested

## Dependency
SheenFigure only depends on SheenBidi in order to support UTF-8, UTF-16 and UTF-32 string encodings. Other than that, it only uses standard C library headers ```stddef.h```, ```stdint.h```, ```stdlib.h``` and ```string.h```.
SheenFigure only depends on [SheenBidi](https://github.com/mta452/SheenBidi) in order to support UTF-8, UTF-16 and UTF-32 string encodings. Other than that, it only uses standard C library headers ```stddef.h```, ```stdint.h```, ```stdlib.h``` and ```string.h```.

## Configuration
The configuration options are available in `Headers/SFConifg.h`.
The configuration options are available in `Headers/SFConfig.h`.

* ```SF_CONFIG_UNITY``` builds the library as a single module and lets the compiler make decisions to inline functions.

## Compiling
SheenFigure can be compiled with any C compiler. The best way for compiling is to add all the files in an IDE and hit build. The only thing to consider however is that if ```SF_CONFIG_UNITY``` is enabled then only ```Source/SheenFigure.c``` should be compiled.

## Conformance
Following are the tables implemented by SheenFigure.

### OpenType Layout Common Table Formats
| Table | Supported |
|------------------ |:---------: |
| Script List | ✔️ |
| Feature List | ✔️ |
| Lookup List | ✔️ |
| Coverage | ✔️ |
| Class Definition | ✔️ |
| Device ||
| Variation Index ||

### GDEF (Glyph Definition Table)
| Subtable | Supported |
|---------------------------------- |:---------: |
| Glyph Class Definition | ✔️ |
| Attachment List ||
| Ligature Caret List ||
| Mark Attachment Class Definition | ✔️ |
| Mark Glyph Sets | ✔️ |
| Item Variation Store ||

### GPOS (Glyph Positioning Table)
| Subtable | Format 1 | Format 2 | Format 3 |
|----------------------------- |:--------: |:--------: |:--------: |
| Single Adjustment | ✔️ | ✔️ | |
| Pair Adjustment | ✔️ | ✔️ | |
| Cursive Attachment | ✔️ | | |
| Mark To Base Attachment | ✔️ | | |
| Mark To Ligature Attachment | ✔️ | | |
| Mark To Mark Attachment | ✔️ | | |
| Context Positioning | ✔️ | ✔️ | ✔️ |
| Chained Context Positioning | ✔️ | ✔️ | ✔️ |
| Extension Positioning | ✔️ | | |

### GSUB (Glyph Substitution Table)
| Subtable | Format 1 | Format 2 | Format 3 |
|-------------------------- |:--------: |:--------: |:--------: |
| Single | ✔️ | ✔️ | |
| Multiple | ✔️ | | |
| Alternate || | |
| Ligature | ✔️ | | |
| Context | ✔️ | ✔️ | ✔️ |
| Chaining Context | ✔️ | ✔️ | ✔️ |
| Extension | ✔️ | | |
| Reverse Chaining Context || | |

0 comments on commit 9bbaaa1

Please sign in to comment.