From d19f31f51148503b5b755eb296369aa38326eec1 Mon Sep 17 00:00:00 2001 From: Vahagn Khachatryan Date: Tue, 18 Dec 2018 18:19:37 +0000 Subject: [PATCH] Ebpub that can be read on edge browser. --- src/epub.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/src/epub.js b/src/epub.js index e1415ea..ae1c5fe 100644 --- a/src/epub.js +++ b/src/epub.js @@ -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 = ` + let html = new StringDecoder("utf-8").write(content) + let dom = new DOMParser().parseFromString(html, 'text/html'); + let xml = XMLSerializer.serializeToString(dom); +// let cnt = ` +// +let cnt = ` @@ -29,7 +31,7 @@ class EpubXhtml{ -${new TextDecoder("utf-8").write(content)} +${xml} ` @@ -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]