Hi Justyna,
Over the last years we created a dedicated team in Oxygen for publishing and customizing PDF using CSS so officially we do not support anymore customization questions about the old approach of using XSL-FO. With CSS what you want is quite simple to achieve with a selector like this for example:
A couple of suggestions for the XSL-FO based PDF generation:
- There is a book named "DITA for Print" by Leight White which covers lots of aspects of PDF (XSL-FO based) customization.
- Do you already have a PDF customization folder or plugin set up? You would need some knowledge of XSLT to customize the PDF publishing:
https://www.oxygenxml.com/doc/versions/ ... ation.html
The generation of the XSL-FO lists from DITA lists takes place in the stylesheet "OXYGEN_INSTALL_DIR/frameworks/dita/DITA-OT3.x/plugins/org.dita.pdf2/xsl/fo/lists.xsl"
It has templates which match for example list items inside DITA <ol> elements:
Code: Select all
<xsl:template match="*[contains(@class, ' topic/ol ')]/*[contains(@class, ' topic/li ')]">
and attribute sets like "ol.li" are used. This particular attribute set is defined in "OXYGEN_INSTALL_DIR/frameworks/dita/DITA-OT3.x/plugins/org.dita.pdf2/cfg/fo/attrs/lists-attr.xsl" and looks like this:
Code: Select all
<xsl:attribute-set name="ol.li">
<xsl:attribute name="space-after">1.5pt</xsl:attribute>
<xsl:attribute name="space-before">1.5pt</xsl:attribute>
<xsl:attribute name="relative-align">baseline</xsl:attribute>
</xsl:attribute-set>
So a customization could provide other values for the spaces before and after a list item.
If you want this only for specific <ol> elements you could set an "outputclass="custom"" attribute on it and then in the XSLT try to increase the spaces only if the <ol> has a certain value for the
outputclass attribute.
- You could also try to register and ask around on the public DITA Users List:
https://dita-users.groups.io/g/main
Regards,
Radu