I'm editing a woff
font file using FontForge (version 20190801 on windows 10), and I would like to add a glyph for the unicode character 0xD835.
However the box for this character has a cross on the upper box where usually the unicode char is displayed. Moreover its description in the top bar is "surrogate high, non private use" (what does this mean?), see images below
I tried copying a glyph from another character and pasting it into the 0xD835 box, obtaining this
but the character is not displaying when I use it. Moreover, FontForge crashes if I click on "glyph info".
There are many other characters which cannot be used, are these characters permanently disabled or is there a way to use them?
The file I'm working on is cmunrm.woff
of the Computer Modern Serif font, available here. Here is the direct link to the woff file.
But there is no such thing as "the unicode character D835". everything between D800 and DFFF is illegal on its own, and can only be used (but still not assigned) in pairs of a low and high surrogate code in the UTF-16 encoding to resolve a number greater than 16 bits in what is a 16 bit fixed width encoding scheme.
You're probably not even using UTF-16 (since your font is likely using separate UCS-2 and UCS-4 cmap subtables) but to make sure no one does anything funny with those codepoints, the Unicode standard forbids the use of those codepoints for anything other than surrogate pairs anyway.
See https://www.unicode.org/versions/Unicode12.0.0/ch23.pdf pp890 for the more most authoritative, detailed information as can be found on the internet about surrogate pairs.