Kovid Goyal
96c93fa252
Add support for emoji presentation when choosing fallback fonts
2018-02-06 11:11:22 +05:30
Kovid Goyal
1ae7ae4a1d
Fix consecutive separate ligatures being rendered in the same group
...
Rendering multiple ligatures in the smae group is bad for performance
and also causes incorrect rendering if the last ligature in the group
does not fit into the number of cells in the group.
2018-01-14 11:18:44 +05:30
Kovid Goyal
0fcce6ec58
Remove trailing whitespace from native code files
2017-12-20 08:44:47 +05:30
Kovid Goyal
c86c166448
More work on positioning glyphs with CoreText
2017-12-11 18:48:14 +05:30
Kovid Goyal
5407fa72b4
Start work on rendering with CoreText
2017-12-10 20:28:06 +05:30
Kovid Goyal
e332522a61
Mark backend API in fonts.h header
2017-12-10 09:21:46 +05:30
Kovid Goyal
ed2e83654f
Draw emoji on macOS using CoreText rather than FreeType
...
Needed because FreeType cannot handle the latest version of the Apple
Color Emoji font, which probably uses SVG-in-OTF instead of SBIX.
Finishes up the color emoji implementation.
2017-12-09 12:01:43 +05:30
Kovid Goyal
8d7515bd9b
Basic color emoji rendering working
...
Still need to downscale color bitmaps to fit into cells
2017-12-09 12:01:43 +05:30
Kovid Goyal
9cda51b5a8
Store sprites in an RGBA texture
...
Needed to support color emoji
2017-12-09 12:01:42 +05:30
Kovid Goyal
336857a106
A more general cp->gid API
2017-11-12 23:43:21 +05:30
Kovid Goyal
67a37f1f41
Adjust the point size of fallback and symbol fonts so that their heights match the current cell height
2017-11-12 10:30:57 +05:30
Kovid Goyal
5f4e003bed
Add a ligature shaping test
2017-11-11 20:55:53 +05:30
Kovid Goyal
e5d411b80d
Refactor font code
...
DRYer with global state stored in fewer places. And only round-tripping
through python for font selection, not face creation.
2017-11-11 18:14:22 +05:30
Kovid Goyal
cccacfdf7c
Restore Apple's line height fudge factor on macOS
2017-11-10 17:38:36 +05:30
Kovid Goyal
541f389a06
Work on using FreeType to render on macOS as well
2017-11-10 15:39:53 +05:30
Kovid Goyal
c2b2833a37
API to load FreeType font from path and psname
2017-11-10 14:50:15 +05:30
Kovid Goyal
b0fffad0c2
API to create FreeType face from in memory data
2017-11-10 14:30:54 +05:30
Kovid Goyal
774956053a
Allow storing arbitrary data on FreeType Face objects
2017-11-10 14:20:20 +05:30
Kovid Goyal
934d21ac30
Wire up a few remaining pieces
2017-11-09 16:55:46 +05:30
Kovid Goyal
58be99a27e
Work on rendering ligatures correctly
2017-11-09 16:55:43 +05:30
Kovid Goyal
4726bcd210
Implement rendering of glyphs from font files in Freetype
2017-11-09 16:55:42 +05:30
Kovid Goyal
7d7d82a68d
Start working on actually rendering lines of text
2017-11-09 16:55:38 +05:30
Kovid Goyal
f25d2ea540
Rip out the old sprite update code
2017-11-09 16:45:45 +05:30
Kovid Goyal
3643a78b18
Start work on line based rendering
2017-11-09 16:45:44 +05:30