有没有办法在 docbook xsl-transform 中指定图像的最大宽度?
我们有一个问题是屏幕截图太大而无法放在页面上,因此希望在输出中的图像上设置最大宽度。
在 Docbook XML 文件中指定图像的宽度似乎是错误的形式(Docbook 文件应该是关于内容而不是演示文稿),大量的手动工作,并且可能大小不一致
那么有没有一种方便的方法来做到这一点?
image.default.width 没有用,因为它也会改变小于“页面”宽度的图像。
试试<imagedata width="100%" scalefit="1">
。它在我知道的源 XML 中的每个图像上,但它会随着各种输出媒体大小进行缩放。
先前的答案与正确的链接非常接近,但错过了该页面上的关键短语:
使打印输出的图形保持其自然大小,除非它太大而无法适应可用宽度,在这种情况下,将其缩小以适应、使用
scalefit="1"
、width="100%"
和contentdepth="100%"
属性。
该建议适用于由fop
. 如果您还生成 HTML 文档,则必须添加以下 CSS:
img {
max-width: 100%;
width: auto;
height: auto;
}
您可以通过以下方式包含 CSS:
$ xsltproc --stringparam html.stylesheet doc.css ...