D.5. 插入图片

有必要为所有可能的最终文档类型插入图片格式。例如:网页使用 JPG 文件,PostScript 和 PDF 文件使用 EPS 文件。

如果使用 TeX 格式,则需要将图像作为 PostScript 文件。对于在线发布,可以使用任何常见的图像文件,例如 JPGGIFPNG

插入图片最简单的方法是使用fileref属性。通常图片生成为 JPG 和 PostScript(PS 或 EPS)。

示例 D-6. 插入图片

<figure>
   <title>Picture's
   Title</title> <graphic fileref="images/file"></graphic>
</figure> 

<figure>替换为<informalfigure>可以消除插入图片标题的需要。

仍然存在float属性,其值为0表明图片应放置在标记出现的确切位置。 值1允许将图片移动到更方便的位置(该位置可以在样式表中描述,也可以由应用程序控制)。

D.5.1. 图形格式

向 LDP 提交图形时,请提交一组.eps格式的图形,另一组.gif, .jpg.png格式的图形。 首选格式是.png.jpg,因为.gif.

存在专利问题。 您可以使用.jpg文件用于连续色调图像,例如照片或颜色渐变的图像。 使用.png用于简单的图像,例如图表、一些屏幕截图和颜色数量较少的图像。

D.5.2. 替代方法

示例 D-6 的第一个替代方案是消除<figure><informalfigure>元素。

当您决定在不接受图片的媒体上发布文本时,另一种有趣的替代方法是使用包装器,<imageobject>.

示例 D-7. 使用<imageobject>

<figure>
   <title>Title</title> 
   <mediaobject>
      <imageobject>
	 <imagedata fileref="images/file.eps" format="EPS">
      </imageobject> 
   <imageobject>
	 <imagedata fileref="images/file.jpg" format="JPG">
      </imageobject> 
      <textobject>
	 <phrase>Here there's an image of this example</phrase>
      </textobject> 
   <caption>
   <para>Image Description. Optional. </para>
   </caption>
   </mediaobject>
</figure> 

以下格式的文件可用:BMP、CGM-BINARY、CGM-CHAR、CGM-CLEAR、DITROFF、DVI、EPS、EQN、FAX、GIF、GIF87A、GIF89A、IGES、JPEG、JPG、LINESPECIFIC、PCX、PIC、PS、SGML、TBL、TEX、TIFF、WMF、WPG。

此方法提供了一个优点:更好地控制应用程序。 元素<imageobject>会依次进行测试,直到其中一个被接受。 如果输出格式不支持图像,则将使用<textobject>元素。 但是,使用格式 示例 D-7 的最大优点是,在 DocBook 中5.0<graphic>元素将不复存在。

作为一个缺点,需要对相同的信息进行多个表示代码。 由作者决定如何在文档中实现插图和图片,但为了与未来的版本兼容,我建议使用此方法处理图片和图形。

Warning标题页例外
 

<mediaobject>如果它们用于标题页,则不会显示。 有关更多信息,请阅读:http://www.sagehill.net/docbookxsl/HtmlCustomEx.html#HTMLTitlePage

NoteASCII 图像
 

您可能还想尝试将图像转换为文件的 ASCII 表示形式。JavE(Java ASCII Versatile Editor)可以为您完成此转换。 可以从 http://www.jave.de/ 下载它。 它具有易于使用的 GUI 界面。

如果您更喜欢命令行,您可能想尝试:tgif (http://bourbon.usc.edu:8001/tgif/) 和 AA-Lib (http://aa-project.sourceforge.net/)。