diff options
| author | Karol Kosek <krkk@krkk.ct8.pl> | 2021-04-05 00:16:39 +0200 |
|---|---|---|
| committer | Felix Queißner <felix@ib-queissner.de> | 2021-04-05 17:13:58 +0200 |
| commit | 6dfffb0a2adc1102260cd51e741bcc5f3fdeaf42 (patch) | |
| tree | 92fec5eab3a03984e8eb4a4949e282d409cbc5b1 /src/renderers/markdownrenderer.cpp | |
| parent | d45aad2da4d7fe10c4609d66bdd6f0cba4ba8e03 (diff) | |
| download | kristall-6dfffb0a2adc1102260cd51e741bcc5f3fdeaf42.tar.gz | |
MarkdownRenderer: follow centering first header option
Diffstat (limited to 'src/renderers/markdownrenderer.cpp')
| -rw-r--r-- | src/renderers/markdownrenderer.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/renderers/markdownrenderer.cpp b/src/renderers/markdownrenderer.cpp index 7c7d62c..b8747f1 100644 --- a/src/renderers/markdownrenderer.cpp +++ b/src/renderers/markdownrenderer.cpp @@ -69,6 +69,7 @@ struct RenderState QString &page_title; + bool centre_first_h1; bool suppress_next_block = false; void emitNewBlock() { @@ -215,6 +216,14 @@ static void renderNode(RenderState &state, cmark_node & node, const QTextCharFor if (state.page_title.isEmpty()) state.page_title = text; + if (state.centre_first_h1) + { + auto f = state.text_style.heading_format; + f.setAlignment(Qt::AlignCenter); + cursor.setBlockFormat(f); + state.centre_first_h1 = false; + } + break; case 2: state.outline->appendH2(text, QString { }); break; case 3: state.outline->appendH3(text, QString { }); break; @@ -335,7 +344,8 @@ std::unique_ptr<QTextDocument> MarkdownRenderer::render( &style, &outline, TextStyleInstance { style }, - page_title + page_title, + style.centre_h1 }; renderNode(state, *md_root, state.text_style.standard); |
