Wow!!! Thousand of troubles in just one book.
First of all.
I think that there's a possibility of bug in the conversion engine. I think I should post a bug ticket in the Calibre bugtracker but I need your permission to PM Kovid the book or something like that. He will probably need it to check that possible bug.
As an example, the first paragraph after
Preface has this structure in the Inspector (from the Book View):
html > body > div.calibre_574 > font
And it is converted into:
html > body.calibre > div.calibre5 > a > div.calibre13 > span.calibre18
WTH!?!?!?!? Why does an <a> tag appear?
Because that <a> tag has been introduced, (which means "hyperlink here"), the whole text is rendered underlined in the RMSDK renderer.
Then the reason why your characters are not rendered.
The original prc <font> tag has an internal "face = serif" attribute which actually kills my proposed font embedding (or loading in the ereader) process.
The default font I've selected is just the common "Times New Roman" which actually has all the needed symbols. And the "calibre" class used for <body> is correctly set to use "Times New Roman". So the first step is correctly done: now your whole book uses "Times New Roman"
but where there are special settings about font use.
Because of the <font size ="4" face="serif"> tag in the prc, that default setting is overridden in several classes ("calibre18" and "calibre5") by a "use just a serif font" one. So you lose the direct link to the GOOD font. As the ereader is told to use just a common serif font, it picks any of the internal ones which lacks the needed characters.
And you cannot perform the second step about embedding all the explicitly referenced fonts because "serif"
is not a font but a group of them.
I'm going to post this issue in Calibre bugtracker as a Feature Request for a possible enhancement.
The solution:
- Open your epub in the Edit Book tool of Calibre.
- Open the stylesheet.css file.
- You'll see that one of the first settings is just:
Code:
...
.calibre {
display: block;
font-family: "Times New Roman", serif;
...
Instead of "Times New Roman" you could have any other one. This is the default GOOD font you selected in the conversion process from prc to epub.
- Just look for any
Code:
font-family: serif;
line in that css file and replace it by:
Code:
font-family: "Your GOOD embedded font name";
(Be careful with the ending ";", do not forget it!!!)
- And if you want also replace the strange
Code:
font-family: ScaTimes;
by it too.
- (When looking for matches in the Calibre Editor, in the second drop down menu in the L&F toolbar, select "Current file" or "All Style files", because by default the searches are done in the "Text Files" which are the HTML contents of the book and, stylesheet.css is not one of them).