Skip to content

Commit

Permalink
Docx Writer: handle image alt text, closes jgm#2754
Browse files Browse the repository at this point in the history
  • Loading branch information
mb21 committed Mar 9, 2016
1 parent 2b55b76 commit 204cf75
Showing 1 changed file with 5 additions and 2 deletions.
7 changes: 5 additions & 2 deletions src/Text/Pandoc/Writers/Docx.hs
Expand Up @@ -40,11 +40,13 @@ import Codec.Archive.Zip
import Data.Time.Clock.POSIX
import Data.Time.Clock
import System.Environment
import qualified Text.Pandoc.Builder as B
import Text.Pandoc.Compat.Time
import Text.Pandoc.Definition
import Text.Pandoc.Generic
import Text.Pandoc.ImageSize
import Text.Pandoc.Shared hiding (Element)
import Text.Pandoc.Writers.Markdown (writePlain)
import Text.Pandoc.Writers.Shared (fixDisplayMath)
import Text.Pandoc.Options
import Text.Pandoc.Readers.TeXMath
Expand Down Expand Up @@ -1103,7 +1105,7 @@ inlineToOpenXML opts (Link _ txt (src,_)) = do
M.insert src i extlinks }
return i
return [ mknode "w:hyperlink" [("r:id",id')] contents ]
inlineToOpenXML opts (Image attr alt (src, tit)) = do
inlineToOpenXML opts (Image attr alt (src, _)) = do
-- first, check to see if we've already done this image
pageWidth <- gets stPrintWidth
imgs <- gets stImages
Expand Down Expand Up @@ -1149,12 +1151,13 @@ inlineToOpenXML opts (Image attr alt (src, tit)) = do
[ nvPicPr
, blipFill
, spPr ] ]
let altPlain = writePlain def $ B.doc $ B.para $ B.fromList alt
let imgElt = mknode "w:r" [] $
mknode "w:drawing" [] $
mknode "wp:inline" []
[ mknode "wp:extent" [("cx",show xemu),("cy",show yemu)] ()
, mknode "wp:effectExtent" [("b","0"),("l","0"),("r","0"),("t","0")] ()
, mknode "wp:docPr" [("descr",tit),("id","1"),("name","Picture")] ()
, mknode "wp:docPr" [("descr",altPlain),("id","1"),("name","Picture")] ()
, graphic ]
let imgext = case mt >>= extensionFromMimeType of
Just x -> '.':x
Expand Down

0 comments on commit 204cf75

Please sign in to comment.