@@ -46,6 +46,7 @@ export default class BookParser {
let space = 0;
let inPara = false;
let isFirstSection = true;
+ let isFirstTitlePara = false;
this.binary = {};
let binaryId = '';
@@ -202,6 +203,7 @@ export default class BookParser {
if (path.indexOf('/fictionbook/body') == 0) {
if (tag == 'title') {
newParagraph(' ', 1);
+ isFirstTitlePara = true;
bold = true;
center = true;
}
@@ -217,13 +219,15 @@ export default class BookParser {
if ((tag == 'p' || tag == 'empty-line' || tag == 'v')) {
- newParagraph(' ', 1);
- if (tag == 'p')
+ if (!(tag == 'p' && center && isFirstTitlePara))
+ newParagraph(' ', 1);
+ if (tag == 'p') {
inPara = true;
+ isFirstTitlePara = false;
+ }
if (tag == 'subtitle') {
@@ -263,13 +263,13 @@ class BookConverter {
};
const growParagraph = (text) => {
+ if (!node._p)
+ openTag('p');
if (node._n == 'p' && node._a.length == 0)
text = text.trimLeft();
node._a.push({_t: text});
- openTag('p');
-
const onStartNode = (elemName, tail, singleTag, cutCounter, cutTag) => {// eslint-disable-line no-unused-vars
if (elemName == '')
return;