Найти - Пользователи
Полная версия: ReportLab: Стиль для Paragraph
Начало » Python для новичков » ReportLab: Стиль для Paragraph
1
Maxambek
Доброго времени суток!

У меня такая проблема - не получается указать шрифт в стиле для параграфа. В итоге получаю квадратики нарисованные шрифтом AdobePiStd. Причём после текста выводится табличка - в табличке всё по-русски нормально пишет. Если попробовать вывестии просто на канву - то тоже всё отлично. Как параграфу указать шрифт правильно?

Вот кусок кода:
    # настраиваем шрифт
pdfmetrics.registerFont(ttfonts.TTFont('Tahoma', 'TAHOMA.ttf'))
pdfmetrics.registerFont(ttfonts.TTFont('Tahoma Bold', 'tahomabd.ttf'))

# стиль
p_style=ParagraphStyle({
'fontName':'Tahoma',
'fontSize':10,
'leading':12,
'leftIndent':0,
'rightIndent':0,
'firstLineIndent':0,
'alignment':'LEFT',
'spaceBefore':0,
'spaceAfter':0,
'bulletFontName':'Tahoma',
'bulletFontSize':10,
'bulletIndent':0,
'textColor': colors.black,
'backColor':None,
'wordWrap':True,
'borderWidth': 0,
'borderPadding': 0,
'borderColor': None,
'borderRadius': None,
'allowWidows': 1,
'allowOrphans': 0,
})
# текст
my_parag=Paragraph('Телефоны: '+dep, p_style)
text.append(my_parag)
agalen
Конструктор ParagraphStyle принимает не dict, а keyword-параметры:
     def __init__(self, name, parent=None, **kw):
Т.е. вызывать надо примерно так:
p_style=ParagraphStyle(  "my_ctyle", **{ ....
Maxambek
Спасибо большое! Всё получилось.
Этот момент в документации не отражён как-то. Или я упустил чего-то

И вопрос ещё появился. В строчке

p_style=ParagraphStyle(  "my_ctyle", ...
параметр “my_ctyle” где потом используется? Я его указать то указал, но он как-то и не нужен
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB