jsPDF icon indicating copy to clipboard operation
jsPDF copied to clipboard

Noto Sans JP not working

Open damien-monni opened this issue 4 years ago • 7 comments

I can't find a way to use Japanese font with jsPDF.

I've created the font with the fontconverter using Noto Sans JP from Google Font, I've imported it but I can't use any Glyphs that I find on the Google Font page here: https://fonts.google.com/specimen/Noto+Sans+JP#glyphs

I can see that the font is imported because it changes if I remove the font script.

Here is a CodeSandbox that reproduces the error: https://codesandbox.io/s/busy-joliot-jwjy8?file=/main.js

I also tried with others fonts, without any better results.

I am using jsPDF in a web application with users from all around the world and I am gettings requests from Japanese to handle it. Any help would be very appreciated!

Thanks

damien-monni avatar May 03 '21 14:05 damien-monni

Can reproduce the issue. Looks like jsPDF does not support this type of font. An exception is thrown:

sse-hooks.f648b14c15c640a14a557113a991cb8d.js:1 jsPDF PubSub Error Cannot use 'in' operator to search for '0' in undefined TypeError: Cannot use 'in' operator to search for '0' in undefined
    at e.glyphFor (ttffont.js:1478)
    at t.glyphsFor (ttffont.js:1809)
    at t.encode (ttffont.js:1848)
    at utf8.js:97
    at Object.<anonymous> (utf8.js:163)
    at P.publish (jspdf.js:70)
    at ae (jspdf.js:2005)
    at oe (jspdf.js:2036)
    at Ae (jspdf.js:2407)
    at b.__private__.buildDocument (jspdf.js:2990)

HackbrettXXX avatar May 04 '21 08:05 HackbrettXXX

@HackbrettXXX Do you know a font that I could use that would handle Japanese characters and that looks like Noto Sans or Open Sans?

damien-monni avatar May 04 '21 10:05 damien-monni

Not really.

HackbrettXXX avatar May 05 '21 08:05 HackbrettXXX

Here for a similar reason. The Noto Sans JP (and SC for Chinese) fonts are only available as .otf files. I don't think the font converter handles dealing with these types of files very well :(. Being able to support these types of fonts would be massive.

SatorCube avatar May 06 '21 17:05 SatorCube

@SatorCube #2276

HackbrettXXX avatar May 07 '21 09:05 HackbrettXXX

Thanks to your issue, I found out that jsPDF doesn't support NotoSans. Thank you.

I've also created a PR to address NotoSans TTF. I'm not the maintainer of this project, so it may be incomplete, but it might be useful if you need it.

HosokawaR avatar Jun 04 '24 12:06 HosokawaR

this font works for me stackblitz demo

iniceice88 avatar Jun 07 '24 08:06 iniceice88