The docx reader, by default, only reads those styles that it can convert into pandoc elements, either by direct conversion or interpreting the derivation of the input document’s styles.
By enabling the styles
extension in the docx reader (-f docx+styles
), you can
produce output that maintains the styles of the input document, using
the custom-style
class. Paragraph styles are interpreted as
divs, while character styles are interpreted as spans.
For example, using the custom-style-reference.docx
file
in the test directory, we have the following different outputs:
Without the +styles
extension:
$ pandoc test/docx/custom-style-reference.docx -f docx -t markdown
This is some text.
This is text with an *emphasized* text style. And this is text with a
**strengthened** text style.
> Here is a styled paragraph that inherits from Block Text.
And with the extension:
$ pandoc test/docx/custom-style-reference.docx -f docx+styles -t markdown
::: {custom-style="First Paragraph"}
This is some text.
:::
::: {custom-style="Body Text"}
This is text with an [emphasized]{custom-style="Emphatic"} text style.
And this is text with a [strengthened]{custom-style="Strengthened"}
text style.
:::
::: {custom-style="My Block Style"}
> Here is a styled paragraph that inherits from Block Text.
:::
With these custom styles, you can use your input document as a reference-doc while creating docx output (see below), and maintain the same styles in your input and output files.