Как вы получаете различные маркеры, которые работают для xsl-fo с XEP - PullRequest
0 голосов
/ 14 января 2020

Вот мой код для выбора типов маркеров для разных вложенных списков, но в PDF отображается только dis c. Как я могу получить полый круг и solid квадратный символ, чтобы показать?

<xsl:choose>
    <xsl:when test="parent::ul[ancestor::ul[ancestor::ul]]"><!--double nested bullet-->
        <xsl:attribute name="font-family">Times New Roman</xsl:attribute>
        <fo:character character="&#x25A0;"/><!--solid square-->
    </xsl:when>
    <xsl:when test="parent::ul[ancestor::ul]"><!--single nested bullet-->
        <xsl:attribute name="font-family">Times New Roman</xsl:attribute>
        <fo:character character="&#x2218;"/><!--hollow circle-->
    </xsl:when>
    <xsl:otherwise><!--bullet-->
        <xsl:attribute name="font-family">Times New Roman</xsl:attribute>
        <fo:character character="&#x2022;"/><!--disc-->
    </xsl:otherwise>
</xsl:choose>

1 Ответ

0 голосов
/ 14 января 2020

Я не мог понять это, поэтому я просто создал png-файлы для глифов, что, вероятно, я и должен был сделать в первую очередь. В случае, если это полезно для кого-то еще, вот изображения, которые я использовал:

Bullet 1 Bullet 2 Bullet 3

Вот снимок экрана с выводом:

PDF Output

А вот и новый код:

<xsl:choose>
    <xsl:when test="parent::ol">
        <xsl:number format="1."/>
    </xsl:when>
    <xsl:when test="parent::ul[ancestor::ul[ancestor::ul]]"><!--double nested bullet-->
        <fo:external-graphic src="{$staticImages}bullet-level-3.png"/>
    </xsl:when>
    <xsl:when test="parent::ul[ancestor::ul]"><!--single nested bullet-->
        <fo:external-graphic src="{$staticImages}bullet-level-2.png"/>
    </xsl:when>
    <xsl:otherwise><!--bullet-->
        <fo:external-graphic src="{$staticImages}bullet-level-1.png"/>
    </xsl:otherwise>
</xsl:choose>
...