diff options
| author | Michael Williamson <mike@zwobble.org> | 2017-04-03 18:48:16 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2017-04-03 18:48:16 +0100 |
| commit | 4f201e920f95c675904033c91cf6b616b0fdf870 (patch) | |
| tree | 23a57f580a18999c796876dca77185ae9a9e950e /README.md | |
| parent | 77a5f9667459eb733d188dceb94bc10c37c68b83 (diff) | |
Add monospace paragraph to code example
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 22 |
1 files changed, 22 insertions, 0 deletions
@@ -402,6 +402,28 @@ transform_document = mammoth.transforms.paragraph(transform_paragraph) mammoth.convert_to_html(fileobj, transform_document=transform_document) ``` +Or if you want paragraphs that have been explicitly set to use monospace fonts to represent code: + +```python +import mammoth.documents +import mammoth.transforms + +_monospace_fonts = set(["Courier New"]) + +def transform_paragraph(paragraph): + runs = mammoth.transforms.get_descendants_of_type(paragraph, mammoth.documents.Run) + if runs and all(run.font in _monospace_fonts for run in runs): + return paragraph.copy(style_id="code", style_name="Code") + else: + return paragraph + +convert_to_html( + fileobj, + transform_document=mammoth.transforms.paragraph(transform_paragraph), + style_map="p[style-name='Code'] => pre:separator('\n')", +) +``` + #### `mammoth.transforms.paragraph(transform_paragraph)` Returns a function that can be used as the `transform_document` argument. |
