Эх сурвалжийг харах

Добавил отступ слева и справа

Book Pauk 6 жил өмнө
parent
commit
ddce4f9a7b

+ 6 - 4
client/components/Reader/TextPage/TextPage.vue

@@ -50,6 +50,7 @@ class TextPage extends Vue {
         this.canvas.height = this.$refs.main.clientHeight;
         this.canvas.height = this.$refs.main.clientHeight;
         this.lineHeight = this.fontSize + this.lineInterval;
         this.lineHeight = this.fontSize + this.lineInterval;
         this.pageLineCount = Math.floor(this.canvas.height/this.lineHeight);
         this.pageLineCount = Math.floor(this.canvas.height/this.lineHeight);
+        this.w = this.canvas.width - 2*this.indent;
     }
     }
 
 
     showBook() {
     showBook() {
@@ -69,9 +70,10 @@ class TextPage extends Vue {
         this.fontStyle = '';// 'bold','italic'
         this.fontStyle = '';// 'bold','italic'
         this.fontSize = 20;// px
         this.fontSize = 20;// px
         this.fontName = 'arial';
         this.fontName = 'arial';
-        this.lineInterval = 5;// px
+        this.lineInterval = 5;// px, межстрочный интервал
         this.textAlignJustify = true;// выравнивание по ширине
         this.textAlignJustify = true;// выравнивание по ширине
         this.p = 30;// px, отступ параграфа
         this.p = 30;// px, отступ параграфа
+        this.indent = 20;// px, отступ всего текста слева и справа
 
 
         this.calcDrawProps();
         this.calcDrawProps();
         this.drawPage();// пока не загрузили, очистим канвас
         this.drawPage();// пока не загрузили, очистим канвас
@@ -97,7 +99,7 @@ class TextPage extends Vue {
                 this.calcDrawProps();
                 this.calcDrawProps();
                 const parsed = this.book.parsed;
                 const parsed = this.book.parsed;
                 parsed.p = this.p;
                 parsed.p = this.p;
-                parsed.w = this.canvas.width;// px, ширина страницы
+                parsed.w = this.w;// px, ширина текста
                 parsed.font = this.font;
                 parsed.font = this.font;
                 parsed.measureText = (text, style) => {// eslint-disable-line no-unused-vars
                 parsed.measureText = (text, style) => {// eslint-disable-line no-unused-vars
                     return this.context.measureText(text).width;
                     return this.context.measureText(text).width;
@@ -156,7 +158,7 @@ class TextPage extends Vue {
                 text += part.text;
                 text += part.text;
             }
             }
 
 
-            let indent = (line.first ? this.p : 0);
+            let indent = this.indent + (line.first ? this.p : 0);
             y += this.lineHeight;
             y += this.lineHeight;
 
 
             let filled = false;
             let filled = false;
@@ -164,7 +166,7 @@ class TextPage extends Vue {
                 const words = text.split(' ');
                 const words = text.split(' ');
                 if (words.length > 1) {
                 if (words.length > 1) {
                     const spaceCount = words.length - 1;
                     const spaceCount = words.length - 1;
-                    const space = (canvas.width - line.width + spaceWidth*spaceCount)/spaceCount;
+                    const space = (this.w - line.width + spaceWidth*spaceCount)/spaceCount;
 
 
                     let x = indent;
                     let x = indent;
                     for (const word of words) {
                     for (const word of words) {