Question XSL-FO - Éléments de bloc vides


avoir un modèle assez simple:

<xsl:template match="p">
    <fo:block>
        <xsl:apply-templates/>
    </fo:block>
</xsl:template>

Je me demande comment dire à FO de garder des lignes vides si le bloc est vide.

À votre santé
Jan


16
2017-07-04 17:07


origine


Réponses:


Ajoutez simplement un <fo:leader/> élément à la fin de votre <fo:block>. Comme ça:

<xsl:template match="p">
        <fo:block>
                <xsl:apply-templates/>
                <fo:leader />
        </fo:block>
</xsl:template>

Le leader ne fera rien pour les lignes contenant du contenu et créera une ligne vide pour les lignes sans contenu.

Testé avec Apache FOP et XEP.


33
2017-08-07 12:50



Ou

<xsl:template match="p">
    <fo:block>
            <xsl:apply-templates/>
            &#x00A0;
    </fo:block>

&#x00A0; est l'équivalent de &nbsp; en HTML (en fait &nbsp; est une entité XML définie comme A0 qui est le caractère Unicode pour Non Breaking Space).


11
2018-01-12 00:32



Alternativement,

<fo:block white-space-treatment="preserve"> </fo:block>

8
2017-12-10 00:01