diff options
| author | John MacFarlane <[email protected]> | 2022-11-29 09:37:31 -0800 |
|---|---|---|
| committer | John MacFarlane <[email protected]> | 2022-11-29 09:37:31 -0800 |
| commit | 6a23ac0d1dc91260fb86abd517cfbdf24b0dfe1b (patch) | |
| tree | 484eee1d4197787aab12dc216230f8bf15825d8c | |
| parent | 8f9e16265b7ca41ea171b16880b9e5fbec0ab533 (diff) | |
DocBook writer: render image alt text using textobject element.
See #8437.
| -rw-r--r-- | src/Text/Pandoc/Writers/DocBook.hs | 8 | ||||
| -rw-r--r-- | test/writer.docbook4 | 3 | ||||
| -rw-r--r-- | test/writer.docbook5 | 3 |
3 files changed, 12 insertions, 2 deletions
diff --git a/src/Text/Pandoc/Writers/DocBook.hs b/src/Text/Pandoc/Writers/DocBook.hs index db94a518e..c7db4c699 100644 --- a/src/Text/Pandoc/Writers/DocBook.hs +++ b/src/Text/Pandoc/Writers/DocBook.hs @@ -438,13 +438,17 @@ inlineToDocBook opts (Link attr txt (src, _)) then inTags False "link" $ ("xlink:href", src) : idAndRole attr else inTags False "ulink" $ ("url", src) : idAndRole attr ) <$> inlinesToDocBook opts txt -inlineToDocBook opts (Image attr _ (src, tit)) = return $ +inlineToDocBook opts (Image attr ils (src, tit)) = return $ let titleDoc = if T.null tit then empty else inTagsIndented "objectinfo" $ inTagsIndented "title" (literal $ escapeStringForXML tit) + alt = if null ils + then mempty + else inTagsIndented "textobject" $ + inTags False "phrase" [] $ literal (stringify ils) in inTagsIndented "inlinemediaobject" $ inTagsIndented "imageobject" $ - titleDoc $$ imageToDocBook opts attr src + titleDoc $$ imageToDocBook opts attr src $$ alt inlineToDocBook opts (Note contents) = inTagsIndented "footnote" <$> blocksToDocBook opts contents diff --git a/test/writer.docbook4 b/test/writer.docbook4 index baf1937b5..af26f32c9 100644 --- a/test/writer.docbook4 +++ b/test/writer.docbook4 @@ -1357,6 +1357,9 @@ or here: <http://example.com/> Here is a movie <inlinemediaobject> <imageobject> <imagedata fileref="movie.jpg" /> + <textobject> + <phrase>movie</phrase> + </textobject> </imageobject> </inlinemediaobject> icon. </para> diff --git a/test/writer.docbook5 b/test/writer.docbook5 index dd73803aa..3d12495e6 100644 --- a/test/writer.docbook5 +++ b/test/writer.docbook5 @@ -1332,6 +1332,9 @@ or here: <http://example.com/> Here is a movie <inlinemediaobject> <imageobject> <imagedata fileref="movie.jpg" /> + <textobject> + <phrase>movie</phrase> + </textobject> </imageobject> </inlinemediaobject> icon. </para> |
