5

有没有办法在 docbook xsl-transform 中指定图像的最大宽度?

我们有一个问题是屏幕截图太大而无法放在页面上,因此希望在输出中的图像上设置最大宽度。

在 Docbook XML 文件中指定图像的宽度似乎是错误的形式(Docbook 文件应该是关于内容而不是演示文稿),大量的手动工作,并且可能大小不一致

那么有没有一种方便的方法来做到这一点?

image.default.width 没有用,因为它也会改变小于“页面”宽度的图像。

4

2 回答 2

4

试试<imagedata width="100%" scalefit="1">。它在我知道的源 XML 中的每个图像上,但它会随着各种输出媒体大小进行缩放。

看看这个关于图像尺寸的页面

于 2009-12-04T16:30:44.790 回答
4

先前的答案与正确的链接非常接近,但错过了该页面上的关键短语:

使打印输出的图形保持其自然大小,除非它太大而无法适应可用宽度,在这种情况下,将其缩小以适应、使用scalefit="1"width="100%"contentdepth="100%"属性。

该建议适用于由fop. 如果您还生成 HTML 文档,则必须添加以下 CSS:

img {
    max-width: 100%;
    width: auto;
    height: auto;
}

您可以通过以下方式包含 CSS:

$ xsltproc --stringparam html.stylesheet doc.css ...
于 2011-06-23T20:38:59.817 回答