我们面临着从XML内容发布PDF输出的格式问题。 在表格列中,表格单元格中的文本包含一些文本(模型编号),例如
AD150,OP834,
HT78J,QW09T,
OL560, PQ
UW ,AG800,XN280
如突出显示的那样,如果名称中有空格(“PQ UW”),则提到的模型名称将分为两行。即使有足够的单元格宽度来容纳空格后的文本,也会发生这种情况。但是,如果没有空格,文本将以常规列宽分割。
请建议解决方法以解决此问题,以便文本始终显示在同一行(不会分成新行),即使文本中有空格也是如此。文本应仅以常规单元格宽度打破。
答案 0 :(得分:1)
如果输入XML为每个型号都有单独的标签,则提供的示例XSL将很有效。如果没有,源XML就是这样:
< modellist> OL560,PQ UW,AG800< / modellist>
然后,您将编写一个递归模板来处理列表中的每个字符,将输出写入变量(搜索递归XSL模板以进行拆分示例)。这样做并不难。您可以输出“,”之后的任何空格字符,但是如上所述替换不遵循“,”的任何空格字符(使用不间断的空格)。
从这里开始寻找灵感:
答案 1 :(得分:0)
尝试一件便宜的事情:渲染模型名称时,将空格更改为字符U + 00A0,不间断空格。像这样:
<xsl:template match="model-name">
<xsl:value-of select="translate(.,' ',' ')"/>
</xsl:template>