Поправки багов
This commit is contained in:
@@ -63,7 +63,8 @@ class TextPage extends Vue {
|
||||
this.parsed.font = this.font;
|
||||
this.parsed.wordWrap = this.wordWrap;
|
||||
this.measureText = (text, style) => {// eslint-disable-line no-unused-vars
|
||||
this.context.font = this.fontByStyle(style);
|
||||
if (style)
|
||||
this.context.font = this.fontByStyle(style);
|
||||
return this.context.measureText(text).width;
|
||||
};
|
||||
this.parsed.measureText = this.measureText;
|
||||
|
||||
@@ -396,7 +396,16 @@ export default class BookParser {
|
||||
}
|
||||
}
|
||||
|
||||
line.parts.push({style, text: partText});
|
||||
if (partText != '')
|
||||
line.parts.push({style, text: partText});
|
||||
|
||||
if (line.parts.length) {//корявенько, коррекция при переносе
|
||||
let t = line.parts[line.parts.length - 1].text;
|
||||
if (t.trimRight() != t) {
|
||||
line.parts[line.parts.length - 1].text = t.trimRight();
|
||||
prevW -= this.measureText(' ');
|
||||
}
|
||||
}
|
||||
line.end = para.offset + ofs;
|
||||
line.width = prevW;
|
||||
line.first = (j == 0);
|
||||
@@ -417,10 +426,18 @@ export default class BookParser {
|
||||
prevW = w;
|
||||
}
|
||||
|
||||
line.parts.push({style, text: partText});
|
||||
if (partText != '')
|
||||
line.parts.push({style, text: partText});
|
||||
partText = '';
|
||||
}
|
||||
|
||||
if (line.parts.length) {//корявенько, коррекция при переносе
|
||||
let t = line.parts[line.parts.length - 1].text;
|
||||
if (t.trimRight() != t) {
|
||||
line.parts[line.parts.length - 1].text = t.trimRight();
|
||||
prevW -= this.measureText(' ');
|
||||
}
|
||||
}
|
||||
line.end = para.offset + para.length - 1;
|
||||
line.width = prevW;
|
||||
line.first = (j == 0);
|
||||
|
||||
Reference in New Issue
Block a user