SVG-to-PDFKit icon indicating copy to clipboard operation
SVG-to-PDFKit copied to clipboard

Math equation svg not rendering

Open zahrafali opened this issue 5 years ago • 1 comments

Hi, I am using an SVG from MathType in pdfmake (which uses SVG-to-PDFKit) This SVG doesnt render correctly, some parts of it are missing. - <svg xmlns="http://www.w3.org/2000/svg" xmlns:wrs="http://www.wiris.com/xml/cvs-extension" height="48" width="26" wrs:baseline="29"><!--MathML: <math xmlns="http://www.w3.org/1998/Math/MathML"><msubsup><mo>&#x222B;</mo><mn>1</mn><mn>2</mn></msubsup></math>--><defs><style type="text/css">@font-face{font-family:'math1fa95123aa5f89781ed4e89a55e';src:url(data:font/truetype;charset=utf-8;base64,AAEAAAAMAIAAAwBAT1MvMi7iBBMAAADMAAAATmNtYXDEvmKUAAABHAAAADRjdnQgDVUNBwAAAVAAAAA6Z2x5ZoPi2VsAAAGMAAAAhmhlYWQQC2qxAAACFAAAADZoaGVhCGsXSAAAAkwAAAAkaG10eE2rRkcAAAJwAAAACGxvY2EAHTwYAAACeAAAAAxtYXhwBT0FPgAAAoQAAAAgbmFtZaBxlY4AAAKkAAABn3Bvc3QB9wD6AAAERAAAACBwcmVwa1uragAABGQAAAAUAAADSwGQAAUAAAQABAAAAAAABAAEAAAAAAAAAQEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAgICAAAAAg1UADev96AAAD6ACWAAAAAAACAAEAAQAAABQAAwABAAAAFAAEACAAAAAEAAQAAQAAIiv//wAAIiv//93WAAEAAAAAAAABVAMsAIABAABWACoCWAIeAQ4BLAIsAFoBgAKAAKAA1ACAAAAAAAAAACsAVQCAAKsA1QEAASsABwAAAAIAVQAAAwADqwADAAcAADMRIRElIREhVQKr/asCAP4AA6v8VVUDAAABAEv/awILA0AAGQAAASYOAQMCDgEjJjQ2BiMWPgETEj4BMxYOATYB9TU1ICAgQDZAKlULNTU2ICAgQDVAKwFVCwMVFiuL/uD+wIogFUAVQBUrigEgAUCLIBVAFT8AAAABAAAAAQAA1XjOQV8PPPUAAwQA/////9Y6E3P/////1joTcwAA/yAEgAOrAAAACgACAAEAAAAAAAEAAAPo/2oAABdwAAD/tgSAAAEAAAAAAAAAAAAAAAAAAAACA1IAVQH0AEsAAAAAAAAAKAAAAIYAAQAAAAIAXgAFAAAAAAACAIAEAAAAAAAEAADeAAAAAAAAABUBAgAAAAAAAAABABIAAAAAAAAAAAACAA4AEgAAAAAAAAADADAAIAAAAAAAAAAEABIAUAAAAAAAAAAFABYAYgAAAAAAAAAGAAkAeAAAAAAAAAAIABwAgQABAAAAAAABABIAAAABAAAAAAACAA4AEgABAAAAAAADADAAIAABAAAAAAAEABIAUAABAAAAAAAFABYAYgABAAAAAAAGAAkAeAABAAAAAAAIABwAgQADAAEECQABABIAAAADAAEECQACAA4AEgADAAEECQADADAAIAADAAEECQAEABIAUAADAAEECQAFABYAYgADAAEECQAGAAkAeAADAAEECQAIABwAgQBNAGEAdABoACAARgBvAG4AdABSAGUAZwB1AGwAYQByAE0AYQB0AGgAcwAgAEYAbwByACAATQBvAHIAZQAgAE0AYQB0AGgAIABGAG8AbgB0AE0AYQB0AGgAIABGAG8AbgB0AFYAZQByAHMAaQBvAG4AIAAxAC4AME1hdGhfRm9udABNAGEAdABoAHMAIABGAG8AcgAgAE0AbwByAGUAAAMAAAAAAAAB9AD6AAAAAAAAAAAAAAAAAAAAAAAAAAC5BxEAAI2FGACyAAAAFRQTsQABPw==)format('truetype');font-weight:normal;font-style:normal;}</style></defs><text font-family="math1fa95123aa5f89781ed4e89a55e" font-size="32" text-anchor="middle" x="8.5" y="33">&#x222B;</text><text font-family="Arial" font-size="12" text-anchor="middle" x="14.5" y="44">1</text><text font-family="Arial" font-size="12" text-anchor="middle" x="21.5" y="11">2</text></svg>

zahrafali avatar Jan 17 '20 06:01 zahrafali

I think this is a font loading issue. SVG-to-PDFKit doesn't load the fonts defined with @font-face... It should be possible to parse the CSS @font-face and register the base64 font data in PDFKit.

SVG-to-PDFKit already extracts some rules from the CSS stylesheet: https://github.com/alafr/SVG-to-PDFKit/blob/master/source.js#L2524-L2527

Here are some discussions about loading base64 fonts: https://github.com/alafr/SVG-to-PDFKit/issues/82, https://github.com/alafr/SVG-to-PDFKit/issues/72

I don't have time to make the required edits but you can create a pull request.

alafr avatar Feb 22 '20 10:02 alafr