如何在Haddock文档中嵌入图像

ami*_*dfv 25 documentation haskell haddock

如何在本地Haddock文档中嵌入图像?

我看到例如lens包装只是使用的外部链接的图像,但我想在本地存储的图像.

(这个问题与邮件列表上的(未答复的)问题非常相似).

0xA*_*xAX 10

如果要在本地存储图像,可以:

-- A longer description of the package.
description: Some haskell package description.

    <<file:///home/user/your_image.png>>
Run Code Online (Sandbox Code Playgroud)

结果:

在此输入图像描述

如果您不想或不能通过相对路径添加图像,只需将图像名称添加为完整路径:

<<your_image.png>>

在这种情况下,您的图像必须位于project/docs目录中.


Bre*_*gey 10

正如您引用的邮件列表线程中所述,一种选择是使用数据URL将图像内嵌到文档中.它使源本身有点令人不愉快(因为它散布着大量的base64编码数据),尽管使用Haddock的命名块可以帮助,通过将所有图像放在文件末尾的命名块中.有关此方法的实际示例,请参阅circle-packing软件包Haddock文档.

  • 有趣的是,如果你试图制作一个比`circle-packing`包中的图像大得多的图像,那么haddock会因堆栈溢出而死亡.= / (4认同)
  • 奇怪的是它不应该让你引用你的Cabal包中的数据文件.O_O (2认同)

pha*_*dej 8

正如Ian Ross博客文章中所解释的那样,您可以使用extra-doc-filescabal选项将额外的文件捆绑到文档中.