Rei,
This one turned out to be more complicated than I expected. The first problem is that the CJK font in the Noto family is NotoSans, not NotoSerif. That sort of makes sense given the nature of the glyphs, but it makes it so that we have to introduce a separate theme for CJK documents that uses NotoSans as the primary font.
I worked out the fontforge script needed to take the NotoSansCJKsc OTF file and make it something that Asciidoctor PDF or Asciidoctor EPUB3 can use.
https://gist.github.com/mojavelinux/c74162d44ca77d1a7c25You were having a problem with the space character because, oddly, NotoSansCJKsc is missing the space character (0x0020). The following code from the script recreates the missing glyph by stealing content from the non-break space.
----
Select(0u00a0)
Copy()
Select(0u0020)
Paste()
SetWidth(0)
SelectNone()
----
I ran the script in the gist on the NotoSansCJKsc otf file as follows:
I then renamed the TTF file:
$ mv NotoSansCJKsc-Regular.otf notosans-regular-multilingual.ttf
(I didn't create the bold and italic fonts, but you'd follow a similar process)
After that, I needed to create a custom theme for PDF to use this font. I did that by copying the default-theme.yml file and changing the NotoSerif fonts to NotoSans. After that, I'm happy to say it worked!
I have to do some more thinking and hacking before I'm ready to add CJK support into Asciidoctor PDF. I'm probably not going to choose the Noto font family because the fonts are simply too large*. Instead, I'm likely going to use the M+ family. It will work either by specifying a CJK theme or by setting the `scripts` attribute in AsciiDoc to `cjk` or `multilingual`.
-Dan
* We may still have a separate gem to hold the cjk or multilingual theme to to avoid increasing the size of the gem for people not using cjk fonts.