git.iko.soy/typeable/pandoc
on master help sign in
EPUB writer: Fixed regression on cover image.

In 1.12.4 and 1.12.4.2, the cover image would not appear properly, because the metadata id was not correct. This was introduced by the fix to #1254. Now we derive the id from the actual cover image filename, which we preserve rather than using "cover-image."

commitc5c9b0d2890699ee8fcdbb660662957f8efad319 authorJohn MacFarlane <jgm@berkeley.edu> dateThu 15 May 2014, 10:11 (12 years ago) parent256390b
1 file changed+5−5
src/Text/Pandoc/Writers/EPUB.hs+5−5
src/Text/Pandoc/Writers/EPUB.hs+5−5
@@ -333,7 +333,7 @@ writeEPUB opts doc@(Pandoc meta _) = do
333333 case epubCoverImage metadata of
334334 Nothing -> return ([],[])
335335 Just img -> do
336− let coverImage = "cover-image" ++ takeExtension img
336+ let coverImage = "media/" ++ takeFileName img
337337 let cpContent = renderHtml $ writeHtml opts'
338338 (Pandoc meta [RawBlock (Format "html") $ "<div id=\"cover-image\">\n<img src=\"" ++ coverImage ++ "\" alt=\"cover image\" />\n</div>"])
339339 imgContent <- B.readFile img
@@ -561,8 +561,8 @@ writeEPUB opts doc@(Pandoc meta _) = do
561561 ,("content", "0")] $ ()
562562 ] ++ case epubCoverImage metadata of
563563 Nothing -> []
564− Just _ -> [unode "meta" ! [("name","cover"),
565− ("content","cover-image")] $ ()]
564+ Just img -> [unode "meta" ! [("name","cover"),
565+ ("content", toId img)] $ ()]
566566 , unode "docTitle" $ unode "text" $ plainTitle
567567 , unode "navMap" $
568568 tpNode : evalState (mapM (navPointNode navMapFormatter) secs) 1
@@ -657,8 +657,8 @@ metadataElement version md currentTime =
657657 coverageNodes = maybe [] (dcTag' "coverage") $ epubCoverage md
658658 rightsNodes = maybe [] (dcTag' "rights") $ epubRights md
659659 coverImageNodes = maybe []
660− (const $ [unode "meta" ! [("name","cover"),
661− ("content","cover-image")] $ ()])
660+ (\img -> [unode "meta" ! [("name","cover"),
661+ ("content",toId img)] $ ()])
662662 $ epubCoverImage md
663663 modifiedNodes = [ unode "meta" ! [("property", "dcterms:modified")] $
664664 (showDateTimeISO8601 currentTime) | version == EPUB3 ]