mirror of
https://github.com/alexadam/save-as-ebook.git
synced 2025-09-13 02:39:45 +00:00
new imgs
This commit is contained in:
parent
ecf0d434f7
commit
d91272b741
2 changed files with 19 additions and 16 deletions
|
@ -1,8 +1,8 @@
|
|||
var cssFileName = 'ebook.css';
|
||||
|
||||
function getImagesIndex(allImgSrc) {
|
||||
return Object.keys(allImgSrc).reduce(function(prev, elem, index) {
|
||||
return prev + '\n' + '<item href="images/' + allImgSrc[elem] + '" id="img' + index + '" media-type="image/' + getFileExtension(elem) + '"/>';
|
||||
function getImagesIndex(allImages) {
|
||||
return allImages.reduce(function(prev, elem, index) {
|
||||
return prev + '\n' + '<item href="images/' + elem.filename + '" id="img' + index + '" media-type="image/' + getFileExtension(elem.filename) + '"/>';
|
||||
}, '');
|
||||
}
|
||||
|
||||
|
@ -121,7 +121,7 @@ function _buildEbook(allPages) {
|
|||
return prev + '\n' + '<item id="ebook' + index + '" href="pages/' + page.url + '" media-type="application/xhtml+xml" />';
|
||||
}, '') +
|
||||
allPages.reduce(function(prev, page, index) {
|
||||
return prev + '\n' + getImagesIndex(page.imgs);
|
||||
return prev + '\n' + getImagesIndex(page.images);
|
||||
}, '') +
|
||||
// getExternalLinksIndex() +
|
||||
'</manifest>' +
|
||||
|
@ -138,14 +138,14 @@ function _buildEbook(allPages) {
|
|||
|
||||
///////////////
|
||||
///////////////
|
||||
var imgs = oebps.folder("images");
|
||||
var imgsPromises = [];
|
||||
var imgsFolder = oebps.folder("images");
|
||||
allPages.forEach(function(page) {
|
||||
Object.keys(page.imgs).forEach(function(imgSrc, index) {
|
||||
imgs.file(page.imgs[imgSrc], page.imgsData[page.imgs[imgSrc]], {
|
||||
for (var i = 0; i < page.images.length; i++) {
|
||||
var tmpImg = page.images[i];
|
||||
imgsFolder.file(tmpImg.filename, tmpImg.data, {
|
||||
base64: true
|
||||
});
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
var done = false;
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
var allImgSrc = {};
|
||||
var allImgsData = {};
|
||||
var allImages = [];
|
||||
var maxNrOfElements = 10000;
|
||||
//////
|
||||
|
||||
|
@ -220,8 +220,12 @@ function deferredAddZip(url, filename, zip) {
|
|||
if (err) {
|
||||
deferred.reject(err);
|
||||
} else {
|
||||
allImgsData[filename] = base64ArrayBuffer(data);
|
||||
deferred.resolve(data);
|
||||
var tmpImg = {
|
||||
filename: filename,
|
||||
data: base64ArrayBuffer(data)
|
||||
};
|
||||
allImages.push(tmpImg);
|
||||
deferred.resolve();
|
||||
}
|
||||
});
|
||||
return deferred;
|
||||
|
@ -231,7 +235,7 @@ chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
|
|||
console.log('Extract Html...');
|
||||
var imgsPromises = [];
|
||||
allImgSrc = {};
|
||||
allImgsData = {};
|
||||
allImages = [];
|
||||
var result = {};
|
||||
var pageSrc = '';
|
||||
var tmpContent = '';
|
||||
|
@ -263,10 +267,9 @@ chrome.runtime.onMessage.addListener(function(request, sender, sendResponse) {
|
|||
$.when.apply($, imgsPromises).done(function() {
|
||||
result = {
|
||||
url: getPageUrl(document.title),
|
||||
title: getPageTitle(document.title), //gatPageTitle(document.title),
|
||||
title: getPageTitle(document.title),
|
||||
baseUrl: getCurrentUrl(),
|
||||
imgs: allImgSrc,
|
||||
imgsData: allImgsData,
|
||||
images: allImages,
|
||||
content: tmpContent
|
||||
};
|
||||
sendResponse(result);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue