Pergunta

Eu tenho uma planilha xslt com algum texto semelhante ao abaixo:

<xsl:text>I am some text, and I want to be bold</xsl:text>

Gostaria que algum texto estivesse em negrito, mas isso não funciona.

<xsl:text>I am some text, and I want to be <strong>bold<strong></xsl:text>

A tag b obsoleta também não funciona.Como formatar texto em uma tag xsl:text?

Foi útil?

Solução

Você não. xsl:text só pode conter nós de texto e <strong> é um nó de elemento, não uma string que começa com o caractere menor que;XSLT trata da criação de árvores de nós, não de marcação.Então, você tem que fazer

<xsl:text>I am some text, and I want to be </xsl:text>
<strong>bold<strong>
<xsl:text> </xsl:text>

Outras dicas

Experimente isto:

<fo:inline font-weight="bold"><xsl:text>Bold text</xsl:text></fo:inline>

<xsl:texto desativar-saída-escaping = "sim">Eu quero ser <strong>ousado<strong> </xsl:text>

A formatação XSL-FO deve ser capaz de fazer isso, consulte o W3Schools tutorial.

A resposta para isso depende de quanta formatação é necessária no conteúdo e também de onde você obtém o conteúdo.Se você tiver menos conteúdo e menos formatação, poderá usar o que jelovirt sugeriu

<xsl:text>I am some text, and I want to be </xsl:text>
<strong>bold<strong>
<xsl:text> </xsl:text>

No entanto, se o seu conteúdo tiver formatação grande, o que David Medinets sugere é a melhor maneira de fazê-lo

<xsl:text disable-output-escaping="yes">

Temos algumas instruções para imprimir na UI.O conjunto de instruções é enorme e é claro que as lemos no arquivo XML.

Nesses casos, o método acima também é fácil de usar e manter.Isso ocorre porque o conteúdo é fornecido por redatores técnicos.Eles não têm conhecimento de XSL.Eles sabem usar tags HTML e podem editar facilmente o arquivo XML.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top