From: Vincent Vanwaelscappel Date: Fri, 24 Sep 2021 12:16:15 +0000 (+0200) Subject: wip #4702 @1 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=fb86dc70a1c549a387e2d6fa2b75822f0d0341f8;p=fluidbook-html5.git wip #4702 @1 --- diff --git a/js/libs/fluidbook/fluidbook.loader.js b/js/libs/fluidbook/fluidbook.loader.js index 5771e95a..4b8eb38d 100644 --- a/js/libs/fluidbook/fluidbook.loader.js +++ b/js/libs/fluidbook/fluidbook.loader.js @@ -665,23 +665,30 @@ FluidbookLoader.prototype = { var $this = this; - - if (this.texts[pageNr] !== undefined) { - var textContent = this.fluidbook.support.chromeBased ? '' : this.texts[pageNr]; - $("#page_" + pageNr + ' .texts').html(textContent); - $this.renderTextsCanvas(); - callback(); + if (this.texts[pageNr] !== undefined && $(this.texts[pageNr]).get(0).width > 0) { + this.addTextContents(pageNr, callback) } else { this._loadTexts(pageNr, function () { - var textContent = this.fluidbook.support.chromeBased ? '' : this.texts[pageNr]; - $("#page_" + pageNr + ' .texts').html(textContent); - $this.renderTextsCanvas(); - callback(); + $this.addTextContents(pageNr, callback) }); } }, + addTextContents: function (pageNr, callback) { + var t = $("#page_" + pageNr + ' .texts'); + if (this.fluidbook.support.chromeBased) { + $(t).html(''); + this.renderTextsCanvas(); + } else { + $(t).append(this.texts[pageNr]); + } + callback(); + }, + renderTextsCanvas: function () { + if (!this.chromeBased) { + return; + } var $this = this; var z = this.fluidbook.resize.bookScale * 1.5; @@ -700,10 +707,8 @@ FluidbookLoader.prototype = { var page = $(this).data('page'); if ($(this).data('bookScale') === z) { - console.log('no need to render canvas on page ' + page + '') return; } - console.log('render canvas on page ' + page); var cw = $(this).hasClass('z') ? wz : w; var ch = $(this).hasClass('z') ? hz : h; @@ -715,11 +720,11 @@ FluidbookLoader.prototype = { ctx.clearRect(0, 0, cw, ch); var img = $this.texts[page].get(0); - // if (img.width === 0) { - // $this.deletePage(page); - // $this._preloadPage(page, callback); - // return; - // } + if (img.width === 0) { + $this.deletePage(page); + $this._preloadPage(page, callback); + return; + } ctx.drawImage(img, 0, 0, cw, ch); $(this).data('bookScale', z); });