From 27af113cc2dfd12217d8874555ddebcea4682d5a Mon Sep 17 00:00:00 2001 From: Book Pauk Date: Wed, 23 Jan 2019 18:21:13 +0700 Subject: [PATCH] =?UTF-8?q?=D0=9F=D0=BE=D0=BF=D1=80=D0=B0=D0=B2=D0=B8?= =?UTF-8?q?=D0=BB=20=D0=B1=D0=B0=D0=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- client/components/Reader/share/BookParser.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/client/components/Reader/share/BookParser.js b/client/components/Reader/share/BookParser.js index 2a58ea01..62174a39 100644 --- a/client/components/Reader/share/BookParser.js +++ b/client/components/Reader/share/BookParser.js @@ -379,7 +379,6 @@ export default class BookParser { text: String, } }*/ - let parts = this.splitToStyle(para.text); let line = {begin: para.offset, parts: []}; @@ -390,7 +389,7 @@ export default class BookParser { let prevW = 0; let j = 0;//номер строки let style = {}; - let ofs = -1; + let ofs = 0; // тут начинается самый замес, перенос по слогам и стилизация for (const part of parts) { const words = part.text.split(' '); @@ -450,7 +449,10 @@ export default class BookParser { prevW -= this.measureText(' ', style); } } + line.end = para.offset + ofs - wordTail.length - 1; + if (line.end - line.begin < 0) + console.error(`Parse error, empty line in paragraph ${paraIndex}`); line.width = prevW; line.first = (j == 0); line.last = false; @@ -482,6 +484,8 @@ export default class BookParser { } } line.end = para.offset + para.length - 1; + if (line.end - line.begin < 0) + console.error(`Parse error, empty line in paragraph ${paraIndex}`); line.width = prevW; line.first = (j == 0); line.last = true;