Нумерованные абзацы с отчетом - PullRequest
2 голосов
/ 25 ноября 2010

Я пытаюсь использовать reportlab , но нахожу руководство пользователя недостаточно ясным .. (возможно, это только я)

У меня есть следующий код

    for item in content:
      text = item.name
      p = Paragraph(text,style,'*')

, и он отображается точно так, как ожидалось.

Но что, если я хочу нумерацию вместо маркеров ?

Руководство пользователя действительно расплывчато в этой ситуации ...

Ответы [ 2 ]

2 голосов
/ 25 ноября 2010

В руководстве пользователя есть часть по этому вопросу. Если я правильно понимаю, вы должны использовать тег <seq/> вместо маркера для тривиальной нумерации (каждый случай подсчитывает одну). Для более сложной нумерации см. Стр. 73/74.

Например, насколько я понимаю, вы ставите такие вещи, как <b> </b> для жирного текста и <seq/> inline:

from reportlab.platypus import Paragraph

formatted_text = 
    "Some example text. <seq/>First. <seq/>Second. <seq/>Third"
formatted_para = Paragraph(your_formatted_text, your_paragraph_style_instance)

Вам придется немного поэкспериментировать с переносами строк. Этот не будет иметь.

1 голос
/ 23 августа 2011

Старый вопрос, я знаю, но на основе вашего примера кода вы можете сделать что-то вроде этого:

paragraph_number = 1
for item in content:
    text = item.name
    p = Paragraph(text,style,str(paragraph_number))
    paragraph_number += 1

Вы можете просто заменить символ маркера любым другим.

...