我正在设法从 google-chart 生成带有一个折线图的 PDF,但是生成的列标题的质量不符合我们的需要,所以我想自己生成。
应该使用此任务来完成,[fo:table]
但我无法成功定位标题(宽度和边距/填充)。
总而言之,我想使用[fo:block]
设置宽度属性加上负边距(即width="1.5cm" margin-top="-2em"
)来放置标题,但宽度不生效。
你知道怎么做吗?
谢谢。
我正在设法从 google-chart 生成带有一个折线图的 PDF,但是生成的列标题的质量不符合我们的需要,所以我想自己生成。
应该使用此任务来完成,[fo:table]
但我无法成功定位标题(宽度和边距/填充)。
总而言之,我想使用[fo:block]
设置宽度属性加上负边距(即width="1.5cm" margin-top="-2em"
)来放置标题,但宽度不生效。
你知道怎么做吗?
谢谢。
“宽度”属性不适用于 fo:block(请参阅http://www.w3.org/TR/xsl11/#fo_block)。如果要重新定义宽度,则需要使用 fo:block-container ( http://www.w3.org/TR/xsl11/#fo_block-container ) 或其他生成所谓参考区域的元素。很难理解您的预期布局到底是什么。也许您还可以尝试使用“start-indent”和“end-indent”属性来间接影响 fo:block 的实际宽度。高温高压
最后我没能做到这一点,因为 [fo:inline] 试图收集所有可用空间。
一个技巧是将边距(左侧或右侧)设置为 90% 或更多以填补该空白,但我不知道之前的 [fo:inline] 文本是在一、两行或更多行中呈现的。
我发现生成列标题的唯一方法是使用 [fo:table] 并为每个单元格添加边距(左右)。
PS:我使用 FOP-0.95
对于 FOP,您可以使用表格来设置宽度,而不是直接在块上应用它。