Ebpub that can be read on edge browser.

This commit is contained in:
Vahagn Khachatryan
2018-12-18 18:19:37 +00:00
parent 7bc7e93a70
commit d19f31f511

View File

@@ -1,7 +1,9 @@
var isNode=new Function("try {return this===global;}catch(e){return false;}");
if (isNode()){
var JSZip = require('jszip');
const { TextDecoder } = require('string_decoder');
var StringDecoder = require('string_decoder').StringDecoder;
var XMLSerializer = require('xmlserializer')
var DOMParser = require('xmldom').DOMParser
var generatedBufferType = 'uint8array'
} else {
var generatedBufferType = 'uint8array'
@@ -16,12 +18,12 @@ class EpubXhtml{
}
convert(content){
// var blob = new Blob([content],{type:'text/plain'});
// var reader = new FileReader();
// reader.onload = function(evt){callback(evt.target.result);};
// reader.readAsText(blob, encoding);
let cnt = `<?xml version="1.0" encoding="utf-8" standalone="no"?>
let html = new StringDecoder("utf-8").write(content)
let dom = new DOMParser().parseFromString(html, 'text/html');
let xml = XMLSerializer.serializeToString(dom);
// let cnt = `<?xml version="1.0" encoding="utf-8" standalone="no"?>
// <!DOCTYPE html>
let cnt = `<?xml version="1.0" encoding="utf-8" standalone="no"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:epub="http://www.idpf.org/2007/ops">
@@ -29,7 +31,7 @@ class EpubXhtml{
<title></title>
</head>
<body>
${new TextDecoder("utf-8").write(content)}
${xml}
</body>
</html>
`
@@ -271,7 +273,7 @@ class EpubWriter{
}
addFile(filename, content){
console.log(`epub ${filename}: ${content}`)
console.log(`epub ${filename}:`)
if (filename in this.meta.override){
let o = this.meta.override[filename]