mirror of
https://github.com/alexadam/save-as-ebook.git
synced 2025-09-17 04:39:51 +00:00
add support for inline SVG
This commit is contained in:
parent
586173d87f
commit
f046e72253
2 changed files with 13 additions and 1 deletions
|
@ -67,10 +67,20 @@ function extractCanvasToImg($htmlObject) {
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function extractSvgToImg($htmlObject) {
|
||||||
|
var serializer = new XMLSerializer();
|
||||||
|
$htmlObject.find('svg').each(function (index, elem) {
|
||||||
|
var svgXml = serializer.serializeToString(elem);
|
||||||
|
var imgSrc = 'data:image/svg+xml;base64,' + window.btoa(svgXml);
|
||||||
|
$(elem).replaceWith('<img src="' + imgSrc + '">' + '</img>');
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
function preProcess($htmlObject) {
|
function preProcess($htmlObject) {
|
||||||
extractMathMl($htmlObject);
|
extractMathMl($htmlObject);
|
||||||
extractCanvasToImg($htmlObject);
|
extractCanvasToImg($htmlObject);
|
||||||
$htmlObject.find('script, style, svg, noscript, iframe').remove();
|
extractSvgToImg($htmlObject);
|
||||||
|
$htmlObject.find('script, style, noscript, iframe').remove();
|
||||||
$htmlObject.find('*:empty').not('img').remove();
|
$htmlObject.find('*:empty').not('img').remove();
|
||||||
formatPreCodeElements($htmlObject);
|
formatPreCodeElements($htmlObject);
|
||||||
}
|
}
|
||||||
|
|
|
@ -53,6 +53,8 @@ function getFileExtension(fileName) {
|
||||||
tmpFileName = tmpFileName.toLowerCase();
|
tmpFileName = tmpFileName.toLowerCase();
|
||||||
if (tmpFileName === 'jpg') {
|
if (tmpFileName === 'jpg') {
|
||||||
tmpFileName = 'jpeg';
|
tmpFileName = 'jpeg';
|
||||||
|
} else if (tmpFileName === 'svg+xml') {
|
||||||
|
tmpFileName = 'svg';
|
||||||
} else if (tmpFileName.trim() === '') {
|
} else if (tmpFileName.trim() === '') {
|
||||||
tmpFileName = '';
|
tmpFileName = '';
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue