Commit Graph

42 Commits

Author SHA1 Message Date
Daniele Tonon
83cb6f4cc1 Add dynamic font resizing for <140 chars notes 2023-12-28 23:16:03 +01:00
Daniele Tonon
f748b99eb1 Show cut gradient at the text-image bottom only if necessary 2023-12-28 23:00:22 +01:00
Daniele Tonon
89ed30c1ec Fix different Telegram padding in the text-image 2023-12-28 21:40:10 +01:00
Daniele Tonon
6c85d22962 Render author name using drawText() to support emoji 2023-12-28 21:22:49 +01:00
fiatjaf
f06badf393 trying to remove unused glyphs from mainBuffer since they got merged in emojiBuffer. 2023-12-28 15:39:44 -03:00
fiatjaf
bfb1477ce6 fix newline replacer code and remove \t and \r before rendering. 2023-12-28 09:03:14 -03:00
fiatjaf
e17b3e2b45 fix emojiMask not working correctly.
its index was being reset for each wrapped line thus not corresponding to the actual position in the full paragraph content anymore.

basically if the emojiMask was [false, false, false, true, false] for "abc🔛d" but that text was split in two lines like:
"abc
🔛d"
then the emojiMask would be read at 0, 1, 2, then 0, 1.

now that is fixed.
2023-12-28 06:48:14 -03:00
fiatjaf
9f30fbeac9 document the mess we made with the font rendering stuff. 2023-12-26 22:16:31 -03:00
fiatjaf
1022fb76fa successfully mixing in a normal font + the emoji font for some runes only through a myriad of weird hacks. 2023-12-26 22:08:24 -03:00
fiatjaf
9be417fc7c bring in HarfbuzzShaper into code as a function so we can modify it. 2023-12-26 19:38:27 -03:00
fiatjaf
124dc390d4 basically revert the previous commit. 2023-12-26 11:05:40 -03:00
fiatjaf
86f6a09ea3 using a custom RunIterator that takes emojis into account and shapes them with a different font.
it doesn't actually work since the different outputs returned are treated by LineWrapper as necessarily belonging to different lines, so we'll have to do something different.
2023-12-26 11:02:45 -03:00
fiatjaf
28d7a73adf shorten URLs when rendering text image so they don't use all the space. 2023-12-25 23:27:23 -03:00
fiatjaf
a7b56f046b rendering everything with nice script and language detection and font-picking. 2023-12-25 23:27:23 -03:00
fiatjaf
5df944705e use go-text/typesetting library to render text better: rendering farsi. 2023-12-25 23:27:09 -03:00
Daniele Tonon
d790729fb6 Optimize masking for long author names 2023-12-24 22:38:22 +01:00
Daniele Tonon
bb3cfc1157 Add a cut gradient to author name if it's too long 2023-12-24 19:06:08 +01:00
Daniele Tonon
ee076ef22b Fix text-image date position for Twitter 2023-12-24 18:58:31 +01:00
Daniele Tonon
572e9f2974 Fix text-image bar rendering for Twitter 2023-12-24 17:27:43 +01:00
fiatjaf
a7213289ea do not fail everything just because fetching the author picture failed. 2023-12-23 20:54:41 -03:00
fiatjaf
857adab3f5 more detail in image rendering error. 2023-12-23 19:17:33 -03:00
Daniele Tonon
8074a38d89 Optimize empty lines in the preview text image 2023-12-21 16:46:48 +01:00
Daniele Tonon
58f265c4e2 Fix text-image profile position for Twitter
S

S

s

s

s
2023-12-21 16:45:06 +01:00
Daniele Tonon
89a1bb3104 Update text-image design with the author's details and the event date 2023-12-21 14:35:22 +01:00
fiatjaf
47ffe6ee5b use slightly bolder NotoSans. 2023-11-24 14:52:43 -03:00
fiatjaf
3e4cb2a11c use simplified chinese because and check for that before japanese.
fixes https://github.com/fiatjaf/njump/issues/17
2023-11-23 22:30:36 -03:00
fiatjaf
991a3952c3 reuse the logo from the already embedded static/ dir 2023-11-23 20:39:17 -03:00
fiatjaf
d58cb7f000 embed logo in the binary. 2023-11-23 20:28:40 -03:00
Daniele Tonon
15daaffaa7 Review the design of the textual sharing image 2023-11-23 14:48:51 +01:00
Daniele Tonon
9a1ef444ba Fix line height for the textual sharing image 2023-11-23 14:48:51 +01:00
fiatjaf
3565a9d228 background and foreground colors. 2023-11-19 18:35:41 -03:00
fiatjaf
1448d4d53c replace image drawing library. 2023-11-19 13:10:08 -03:00
fiatjaf
1293cb2f5b change BLOCK to "|" at least until I can figure out how to render better images. 2023-11-17 22:16:25 -03:00
fiatjaf
68e3722bbd turn user-agent style possibilities into constants. 2023-10-30 19:35:59 -03:00
fiatjaf
92d8b6a6d1 use event relays when searching for pubkey metadata, compute nprofile. 2023-10-26 08:17:27 -03:00
fiatjaf
8c7333e49f add arabic, hebrew, chinese and others stuff. 2023-10-19 21:10:58 -03:00
fiatjaf
3e762a8eea use NotoSans for all text except when hiragana or katakana is detected, then use NotoSansJP -- and break japanese characters even without whitespace. 2023-10-19 15:01:14 -03:00
fiatjaf
121faa0798 trim twitter images so they fit better in the new twitter preview image boxes. 2023-10-10 09:36:08 -03:00
fiatjaf
4f3141f66a fetch seenOn relays for individual events. 2023-10-02 15:17:39 -03:00
fiatjaf
28ddb1cefd instead of arrows in quotes, use a nicer unicode block character. 2023-10-01 16:11:17 -03:00
fiatjaf
c20e1db65c move stuff from text.go to render_image.go 2023-10-01 15:57:47 -03:00
fiatjaf
a0a528d073 rename generate => renderImage 2023-10-01 15:56:38 -03:00