是否可以对两个 xml 文档使用单个 xsl fo 样式表



是否可以对 2 个 xml 文档使用单个 xsl fo 样式表,其中一个包含一个表,另外两个表。这两个表具有相同的 header.so 我认为是否可以为每个循环使用 a 并根据表生成 pdf。我还想在两张桌子之间留一个间隙。

该表也可以是HTML/XHTML,但我会将其解析为XML

XML 文件 1

<Root>
<Table>
.......
.
.
.
.
.
</Table>
</Root>

XML 文件 2

<Root>
<Table>
.......
.
.
.
.
.
</Table>
<Table>
.......
.
.
.
.
.
</Table>
</Root>

也可以根据每个单元格内的内容调整列大小,例如,如果 row3,单元格 1 具有最大数据,则将其作为列大小。

-----------------------------------------------------
column1    column2   column3
-----------------------------------------------------
1           abc         1
------------------------------------------------------
2          xxxxxxx      1

12312122      0         1

这里第一列的列宽应该是 row3 单元格。第二列的列宽应为 row2 单元格。第三列的列宽应为标题单元格。

谢谢

是的。XSLT样式表可以处理许多xml文件。根据您使用的 XSLT 版本,如果您使用的是 xslt 2.0,则可以使用 doc() 或 document() 函数 (xslt 1.0) 或 collection()。

例如:

<xsl:choose>
    <xsl:when test="doc-available('path/to/xml/file')">
            <xsl:for-each select="doc('path/to/xml/file')">
            <!--do work here-->
            </xsl:for-each>
        </xsl:element>
    </xsl:when>
    <xsl:otherwise>
        <xsl:comment>file not found</xsl:comment>
    </xsl:otherwise>
</xsl:choose>

最新更新