Стили reStructuredText

Я нашел это руководство для rst2pdf, чтобы узнать, как создать файл reStructuredText в полученном pdf-документе. Например, следующее в моей таблице стилей JSON успешно применяется ко всему документу:

"pageSetup" : {
    "size": "A4",
    "width": null,
    "height": null,
    "margin-top": "2cm",
    [...]
    "margin-gutter": "0cm"
}

Как особый стиль применяется только к определенному классу? Например, как я могу применить конкретный шрифт к классу h1? Моя непосредственная трудность связана с тем, что я не уверен, действительно ли она называется h1, h1, header1 или header1.

Ответ 1

rst2pdf.py manual не кажется очень информативным в отношении названий стилей. Однако в разделе "Стили" (глава 8) приведен пример:

["heading1" , {
  "parent": "normal",
  "fontName": "Tuffy_Bold",
  "fontSize": 18,
  "keepWithNext": true,
  "spaceAfter": 6
}],

Итак, кажется, что heading1 - соответствующее имя стиля.

Следует отметить, что

Если вашему документу требуется стиль, который не определен в вашей таблице стилей, он будет печатать предупреждение и использовать bodytext.

Итак, полагая, что вы не получаете никаких предупреждений при создании своего документа, стили должны быть установлены в таблице стилей по умолчанию, поэтому ознакомьтесь с этим, чтобы понять, как используются имена стилей.

Вы можете сделать rst2pdf распечатать таблицу стилей по умолчанию, используя

rst2pdf --print-stylesheet

Если вы хотите добавить стили, просто создайте таблицу стилей (или возьмите стандартную таблицу стилей и измените ее) и передайте ее с опцией -s

rst2pdf mydoc.txt -s mystyles.txt