Come faccio a formattare il testo tra i tag xsl:text?
-
09-06-2019 - |
Domanda
Ho un foglio xslt con un testo simile al seguente:
<xsl:text>I am some text, and I want to be bold</xsl:text>
Vorrei che alcuni testi fossero in grassetto, ma questo non funziona.
<xsl:text>I am some text, and I want to be <strong>bold<strong></xsl:text>
Anche il tag b deprecato non funziona.Come formatto il testo all'interno di un tag xsl:text?
Soluzione
Tu no. xsl:text
può contenere solo nodi di testo e <strong>
è un nodo elemento, non una stringa che inizia con un carattere minore di;XSLT riguarda la creazione di alberi di nodi, non il markup.Quindi, devi fare
<xsl:text>I am some text, and I want to be </xsl:text>
<strong>bold<strong>
<xsl:text> </xsl:text>
Altri suggerimenti
Prova questo:
<fo:inline font-weight="bold"><xsl:text>Bold text</xsl:text></fo:inline>
<xsl:testo disabilita-output-escaping="sì">Voglio essere <strong>audace<strong> </xsl:text>
La formattazione XSL-FO dovrebbe essere in grado di farlo, vedere W3Schools tutorial.
La risposta dipende da quanta formattazione è necessaria nel contenuto e anche da dove si ottiene il contenuto.Se hai meno contenuti e meno formattazione, puoi utilizzare ciò che ha suggerito Jelovirt
<xsl:text>I am some text, and I want to be </xsl:text>
<strong>bold<strong>
<xsl:text> </xsl:text>
Tuttavia, se il tuo contenuto ha una formattazione di grandi dimensioni, ciò che suggerisce David Medinets è il modo migliore per farlo
<xsl:text disable-output-escaping="yes">
Abbiamo alcune istruzioni da stampare sull'interfaccia utente.L'insieme di istruzioni è enorme e ovviamente le leggiamo dal file XML.
In questi casi anche il metodo sopra descritto è facile da usare e da mantenere.Questo perché il contenuto è fornito da scrittori tecnici.Non hanno conoscenza di XSL.Conoscono l'uso dei tag HTML e possono modificare facilmente il file XML.