diff --git a/client/components/Reader/TextPage/TextPage.vue b/client/components/Reader/TextPage/TextPage.vue index e220b7b2..78bdb078 100644 --- a/client/components/Reader/TextPage/TextPage.vue +++ b/client/components/Reader/TextPage/TextPage.vue @@ -160,8 +160,8 @@ class TextPage extends Vue { if (this.textAlignJustify && !line.last) { const words = text.split(' '); if (words.length > 1) { - let space = canvas.width - line.width + spaceWidth*(words.length - 1); - space = space/(words.length - 1); + const spaceCount = words.length - 1; + const space = (canvas.width - line.width + spaceWidth*spaceCount)/spaceCount; let x = 0; for (const word of words) { diff --git a/client/components/Reader/share/BookParser.js b/client/components/Reader/share/BookParser.js index feb0d8df..f50b8e51 100644 --- a/client/components/Reader/share/BookParser.js +++ b/client/components/Reader/share/BookParser.js @@ -109,7 +109,11 @@ export default class BookParser { }); parser.on('textNode', (text) => { - text = text.trim(); + if (text != ' ' && text.trim() == '') + text = text.trim(); + + if (text == '') + return; switch (path) { case '/FictionBook/description/title-info/author/first-name': @@ -144,16 +148,10 @@ export default class BookParser { fb2.annotation += text; } - if (text == '') - return; - if (path.indexOf('/FictionBook/body/title') == 0) { newParagraph(text, text.length); } - if (text == '') - return; - if (path.indexOf('/FictionBook/body/section') == 0) { switch (tag) { case 'p':