If you are just making the book for yourself, then the best solution is to patch the firmware to fix the problem with the KePub reader, and then you don't need to change the book at all.
But if you are publishing the book for others to read, then I don't think there is any solution involving embedded fonts. Without a patch the KePub reader is just plain broken in this regard.
A workaround for the special symbols would be to use images instead of embedded fonts, and size the images as height:1em;width:auto; so that they scale to match the text size. If you use real SVG images then they can look just as good as an embedded font, and since the symbols are not being used as letters in a word it won't matter that they don't work with the dictionary lookup or search functions. (You could also use bitmap images, but they will give a much poorer result than SVG images.)
---
For the ePub version, I would strongly sugguest that you make sure the reader can override the embedded font used for the books main body of text. It is okay to force the use of your font for headings and other decorative purposes, but if you force the reader to use your embedded font for the main paragraph text then at best you will irritate a lot of readers, and at worst some readers with dyslexia, vision impairments, etc. might not be able to read your book at all.
The best way to do that is to set the font-family to your embedded font in body (and in h1,h2 headers, spans for special cases, etc.), but leave the font-family undefined (or explicitly set font-family:inherit) in the paragraph styles used for the main body of text. That way if the reader selects publisher default then they will get the embedded fonts as you chose them including for the main body of text, but if they select their own font then they will still get your embedded fonts for headings etc. but will get their own selected font for the main body of text.
(This advice applies to the kePub version too I guess, but only those readers who have patched their device will see the benefit, others will see no difference.)
|