【问题标题】:docbook maxwidth on images? (xml:fo)图像上的文档最大宽度? (xml:fo)
【发布时间】:2010-12-23 05:36:33
【问题描述】:

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

我们遇到了屏幕截图太大而无法放入页面的问题,因此希望在输出中设置图像的最大宽度。

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

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

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

【问题讨论】:

  • 我相信大卫回答了你的问题。您应该将其标记为这样,以便像我这样的人立即知道要复制/粘贴什么;)

标签: xslt xsl-fo docbook


【解决方案1】:

previous answercorrect link 非常接近,但错过了该页面上的关键短语:

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

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

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

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

$ xsltproc --stringparam html.stylesheet doc.css ...

【讨论】:

    【解决方案2】:

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

    查看this page on image sizing

    【讨论】:

    • +1 用于提及 Bob Stayton 的书。通常图像(好吧,位图图像)往往具有固定大小,因此引用它似乎不是一件坏事。
    • 感谢您的建议,但这会将所有图像缩放到指定的宽度。但我只想缩放不适合的图像。为图书链接 +1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-04
    • 2016-08-11
    • 1970-01-01
    • 2014-08-27
    • 2013-07-27
    相关资源
    最近更新 更多