troika icon indicating copy to clipboard operation
troika copied to clipboard

troika-three-text uncaught exception

Open WallanceLee opened this issue 1 year ago • 8 comments

Error: Error in worker callModule call: Cannot destructure property 'ascender' of 'fontObj' as it is undefined. Why was it happened? Could you provide some listener to receive this exception stacktrace. I want to trace the source parameter, but I cannot found. Thanks a lot for your time.

WallanceLee avatar May 22 '24 05:05 WallanceLee

sorry, I found the solution. If I use default font, there was not the problem, but If I use NotoSerifCJKsc-VF.ttf from google noto repo or other font like Songti, there is the problem. The problem may be with CJK languages, because when I render just ASCII-ranged chars there was not the problem. Could you give me some help?

WallanceLee avatar May 22 '24 05:05 WallanceLee

update my fonts file link: https://github.com/googlefonts/noto-cjk/raw/main/Serif/Variable/TTF/NotoSerifCJKsc-VF.ttf

WallanceLee avatar May 22 '24 05:05 WallanceLee

I'm getting the same thing. It does appear to be related to specific fonts. In my case the fonts aren't CJK-related. I haven't tracked down exactly which fonts I'm using that are causing the issue; I can if that's helpful.

iangilman avatar May 31 '24 00:05 iangilman

@WallanceLee I just tried a local test using your NotoSerifCJKsc-VF.ttf font link and some Chinese text and it renders just fine for me. 🤔

That Cannot destructure property 'ascender' of 'fontObj' error seems like it could only happen if certain characters could not be resolved to a font, which shouldn't ever happen. There may be some sort of fallback bug with certain characters. Can you provide a string of text that definitely triggers the error for you?

lojjic avatar May 31 '24 02:05 lojjic

What if some unicode is not present in font file? For example, \uE532? Sorry, I cannot find the exact character because my CAD file has a lot of character.

WallanceLee avatar Jun 04 '24 01:06 WallanceLee

Any unicode codepoint that can not be resolved in the font file you specify or one of the unicode fonts should just fall back to the null glyph (a rectangle).

I'm not sure how to reproduce this if you can't provide a string that fails. 😓

lojjic avatar Jun 04 '24 02:06 lojjic

I believe I was getting this error from empty strings: ' '. Will have to circle back to confirm.

null77 avatar Jul 03 '24 20:07 null77

I'm getting the same error from the empty strings

steoo avatar Aug 01 '24 14:08 steoo