Kovid Goyal
0c5a053c9c
...
2025-02-03 11:18:18 +05:30
Kovid Goyal
20821f4beb
macOS: Fix fallback font rendering for bold/italic text not working for some symbols that are present in the Menlo regular face but not the bold/italic faces
...
Fixes #8282
2025-02-03 11:06:42 +05:30
Kovid Goyal
02a88b2803
Use 64 byte aligned memory for cairo surface buffer
2025-02-03 11:06:42 +05:30
Kovid Goyal
4e06e0a8fc
...
2025-02-03 11:06:42 +05:30
Kovid Goyal
70152180f8
Update changelog
2025-02-03 11:06:42 +05:30
Kovid Goyal
59c4d05335
...
2025-02-03 11:06:42 +05:30
Kovid Goyal
a0b6c49c94
DRYer
2025-02-03 11:06:42 +05:30
Kovid Goyal
b5cc4b8f4e
Set variation settings for cairo fonts
2025-02-03 11:06:42 +05:30
Kovid Goyal
bab14e8612
Set the palette index cairo font option
2025-02-03 11:06:42 +05:30
Kovid Goyal
3d06cb8709
Set cairo hinting options
2025-02-03 11:06:41 +05:30
Kovid Goyal
f145403fce
Render all emoji not just colrv1 with cairo
...
Less code duplication and we get upscaling of bitmaps for free needed
when rendering large sized text for multicells.
2025-02-03 11:06:41 +05:30
Kovid Goyal
5adc81e146
Skip colrv1 rendering on macOS
2025-02-03 11:06:41 +05:30
Kovid Goyal
a9677f655a
Fix baseline alignment when redering with cairo
2025-02-03 11:06:41 +05:30
Kovid Goyal
44eec08b24
Fix buffer not being cleared before re-use
2025-02-03 11:06:41 +05:30
Kovid Goyal
d068a0a6de
Add basic colrv1 rendering test
2025-02-03 11:06:41 +05:30
Kovid Goyal
ea54cbf193
Fix cairo not releasing static resources at program shutdown
2025-02-03 11:06:41 +05:30
Kovid Goyal
9d9bfc6f26
Forgot to unpremultiply alpha for cairo
2025-02-03 11:06:41 +05:30
Kovid Goyal
1b6fa1ee03
Get rendering of COLRv1 glyphs basically working
...
TODO:
Set cairo font options: hinting, variations, antialias, etc.
Add a test for rendering with some small colrv1 sample font
Check that the destructor is dereferencing the freetype font as expected
2025-02-03 11:06:41 +05:30
Kovid Goyal
744145f392
Add cairo and pixman as deps on Linux
...
Needed to render COLRv1 fonts. Which are needed because bitmap emoji
fonts dont render well at large font sizes such as can be used with
multicell chars.
2025-02-03 11:06:38 +05:30
Kovid Goyal
c599b7e02f
API to render a single codepoint using a Face
2025-02-03 10:56:52 +05:30
Kovid Goyal
689bdde224
Fix history buffer not clearing lines when rewrapping and the number of lines is larger than size of buffer
2025-02-03 10:56:52 +05:30
Kovid Goyal
de19019251
Use a single alloc for all segments of historybuf when resizing
2025-02-03 10:56:52 +05:30
Kovid Goyal
18ba5ce668
...
2025-02-03 10:56:52 +05:30
Kovid Goyal
11315b35ba
...
2025-02-03 10:56:52 +05:30
Kovid Goyal
82d7cc1802
spelling
2025-02-03 10:56:52 +05:30
Kovid Goyal
57d1ec8648
...
2025-02-03 10:56:51 +05:30
Kovid Goyal
c2503988c1
Add a note about querying for scale and width separately
2025-02-03 10:56:51 +05:30
Kovid Goyal
78c83e8218
Add a sentence specifying the fractional scale does not adjust number of cells
2025-02-03 10:56:51 +05:30
Kovid Goyal
dbb1703f15
Fix crash with large text
...
Need to find a better way to render the dotted decoration. Will do that
later, just fix the crash for now.
2025-02-03 10:56:51 +05:30
Kovid Goyal
b53c4941b5
add link to issue discussing text-sizing protocol
2025-02-03 10:56:51 +05:30
Kovid Goyal
dfe59a75b8
...
2025-02-03 10:56:51 +05:30
Kovid Goyal
a30a639cb9
Add docs for multicell + control codes
2025-02-03 10:56:51 +05:30
Kovid Goyal
8fd7d3100f
More multicell docs
2025-02-03 10:56:51 +05:30
Kovid Goyal
9418f399c3
...
2025-02-03 10:56:51 +05:30
Kovid Goyal
530e1ea1b3
Add section on detecting text sizing protocol
2025-02-03 10:56:51 +05:30
Kovid Goyal
3655db3124
...
2025-02-03 10:56:51 +05:30
Kovid Goyal
3501e76238
Document how we solve the character width problem
2025-02-03 10:56:51 +05:30
Kovid Goyal
da234244a4
More docs on text sizing
2025-02-03 10:56:51 +05:30
Kovid Goyal
f1452a80dd
More work on text sizing docs
2025-02-03 10:56:51 +05:30
Kovid Goyal
3b0b1df9c3
Use textFetch() for underline exclusion sampling
...
Fixes sampling from non-bottom row
2025-02-03 10:56:51 +05:30
Kovid Goyal
484155ca89
Start work on documenting text sizing protocol
2025-02-03 10:56:50 +05:30
Kovid Goyal
4e76a3d1c6
Ignore underline exclusion if max overlap is only half the thickness of the underline
...
This eliminates false positives for c and s with some fonts.
2025-02-03 10:56:50 +05:30
Kovid Goyal
8bf8f5dc46
Finish up testing for multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
64e3b641ce
Get basic multicell URL detection working
2025-02-03 10:56:50 +05:30
Kovid Goyal
c3db7c9464
...
2025-02-03 10:56:50 +05:30
Kovid Goyal
6a19918687
More work on multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
cf89dba5af
More work on multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
0bf32c6a59
More work on multicell URL detection
2025-02-03 10:56:50 +05:30
Kovid Goyal
f599144913
Fix multicell marking of hyperlinks
2025-02-03 10:56:50 +05:30
Kovid Goyal
756240f68d
Remove unused code
2025-02-03 10:56:50 +05:30