![]() |
#1 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
MathML support in calibre editor/previewer
I have a math book that I'm going through and want to replace math expressions that are rendered in image or SVG files with MathML equivalents.
I found this: https://manual.calibre-ebook.com/typesetting_math.html However, while the ePub file downloaded from there previews and displays well in calibre viewer and editor preview, actual ePub software such as Apple Books or Thorium do not render it. Conversely, when I create ePub with Sigil with a MathML example (attached) it does not render correctly in calibre viewer or editor previewer, but does so in Apple Books and Thorium reader. So I do not understand the utility of using MathJax if only calibre reader / previewer handles it. It looks like I'll have to do this editing with Sigil and previewing there and with ePub apps like Thorium reader. Am I missing something here? I am guessing that adding the <script> stuff for MathJax would let me preview in calibre as well? and other reading apps would ignore it? Last edited by tomsem; 07-18-2024 at 11:45 AM. |
![]() |
![]() |
![]() |
#2 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
Yes, looks like my guess was correct: I added the <script> reference to header and it previews now.
Perhaps the typesetting_math.html page could be updated to include a MathML example. It seems to me this is what most people will be doing as reading apps aren't going to support javascript solutions in general. |
![]() |
![]() |
Advert | |
|
![]() |
#3 |
creator of calibre
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 44,239
Karma: 23446430
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
Why? Pretty much any browser based reader can and should support javascript. These days most of them are browser based, apart from e-ink ones. MathML is a royal pain to author its not designed for authoring, its more of a machine interchange format. But, that said you can put MathML into typsetting_math.html if you like and MathJax will render it for you just like it does ascii math.
|
![]() |
![]() |
![]() |
#4 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
Quote:
I had been trying to do things with straight HTML with some success (okay for algebraic), but am running into expressions that are not amenable to that. MathML may not be very user friendly, but given my self imposed requirements, I'd rather learn and work with that instead of TeX (if that's the only alternative). I need some auto-completion so I'll probably use VS Code w/MathML extension to compose things and then paste them where needed. This 'project' started out as a Topaz-format book. You can imagine how awful conversion to ePub is and what there is to clean up. But it is a great learning exercise. Last edited by tomsem; 07-18-2024 at 05:13 PM. |
|
![]() |
![]() |
![]() |
#5 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 7,974
Karma: 5449552
Join Date: Nov 2009
Device: many
|
FYI, Chromium version 109 finally supports Core MathML without any MathJax needed. Qt's WebEngine in Qt 6.7.2 (and maybe earlier) do support it.
We (Sigil) still internally use MathJax3.2.2 to render MathML because it supports the MML3 extensions (although that was recently broken by an Arch libxml2 new version bug). Either way, a number of e-reading devices based on Chromium blink should soon have built in mathml core support without mathjax if they do not already. Last edited by KevinH; 07-18-2024 at 05:23 PM. |
![]() |
![]() |
Advert | |
|
![]() |
#6 | |
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 75,575
Karma: 134254544
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
Quote:
Back before ePub 3, I did see a sample ePub with math equations in SVG that worked very well. They even resized when the font size was changed. It looked very good. |
|
![]() |
![]() |
![]() |
#7 |
creator of calibre
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 44,239
Karma: 23446430
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
@tomsem: You are welcome to submit an example using MathML for the docs. The docs are in typesetting_math.html. I have added a note saying that MathML works provided you add the MathJax canary script.
https://github.com/kovidgoyal/calibr...e551d77b9aa62c |
![]() |
![]() |
![]() |
#8 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
Because most of the SVGs in this case replace text paragraphs with a few math symbols sprinkled in, and hence don't respond to font changes and that sort of thing.
|
![]() |
![]() |
![]() |
#9 |
Resident Curmudgeon
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 75,575
Karma: 134254544
Join Date: Nov 2006
Location: Roslindale, Massachusetts
Device: Kobo Libra 2, Kobo Aura H2O, PRS-650, PRS-T1, nook STR, PW3
|
|
![]() |
![]() |
![]() |
#10 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
Quote:
As an exercise, I added MathML examples to the ePub file. Of course that at least quadruples the size of mathjax.html, so I don't know if you want all of that on the typesetting_math page. Probably one is enough to get the gist of things. BTW this is by far the best reference I could find for MathML examples: https://elsenaju.eu/mathml/MathML-Examples.htm It does not cover all of the MathML tags, but that seems true of other cheat sheets and tutorials as well. It is a lot of typing, but I'm happy with the results I'm getting, and it was pretty easy to pick up and use. Last edited by tomsem; 07-20-2024 at 07:49 PM. |
|
![]() |
![]() |
![]() |
#11 |
creator of calibre
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 44,239
Karma: 23446430
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
Yes, just one example, of MathML is sufficient. As I said, I doubt most people will want to author MathML directly.
|
![]() |
![]() |
![]() |
#12 | |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 6,612
Karma: 26963509
Join Date: Apr 2009
Location: USA
Device: iPhone 15PM, Kindle Scribe, iPad mini 6, PocketBook InkPad Color 3
|
Quote:
But it is easy with tools like this: https://temml.org |
|
![]() |
![]() |
![]() |
#13 |
creator of calibre
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 44,239
Karma: 23446430
Join Date: Oct 2006
Location: Mumbai, India
Device: Various
|
Back when I was a physicist everyone ( at least serious physicists and mathematicians) wrote math in LaTeX, and you can use LaTeX directly in ebooks (at least with the calibre viewer). Far, far more convenient than typing mathml.
|
![]() |
![]() |
![]() |
#14 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 7,974
Karma: 5449552
Join Date: Nov 2009
Device: many
|
FYI, there is also a nice Math editor that is part of LibreOffice/OpenOffice that can easily use a WYSIWYG gui to create your formula, and then export it as MathML. It is a lot like the old Formula Editor that used to come with Office, and even standalone on MacOS.
|
![]() |
![]() |
![]() |
#15 |
the rook, bossing Never.
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 12,218
Karma: 89201339
Join Date: Jun 2017
Location: Ireland
Device: All 4 Kinds: epub eink, Kindle, android eink, NxtPaper11
|
LaTex is good. I think also can be used with LO Writer, maybe an extension. I forget.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Kindle Previewer doesn't support Calibre generated azw3/mobi | xtraktor | Calibre | 3 | 02-12-2021 09:04 AM |
CSS support in the editor | vFbjgBDhV | Editor | 5 | 11-03-2020 09:25 AM |
MathML not working (with Calibre@Archlinux?) | nqk | Server | 4 | 07-16-2020 04:09 AM |
Kindle Previewer 3 versus KDP Online Previewer | Contre-jour | Kindle Formats | 3 | 05-29-2018 10:05 AM |
MathML Support in the Browser? | ManDay | Onyx Boox | 0 | 01-28-2013 05:21 AM |