Уведомления

Группа в Telegram: @pythonsu

#1 Март 22, 2011 09:45:36

vak
От:
Зарегистрирован: 2007-05-04
Сообщения: 262
Репутация: +  0  -
Профиль   Отправить e-mail  

reportlab Table

Сейчас пользуюсь в основном Canvas. Вполне хватало и всё понятно. Хотелось бы упростить задачу: использовать Table. Но как этот Table импортировать и от куда - не понятно. Как этот Table прилепить к холсту (canvas) - не понятно. И как установить шрифт к тексту конкретной ячейки - не понятно. Подскажите плиз как используются Table. Документацию читал - не помогло.

from    reportlab.platypus.doctemplate  import  SimpleDocTemplate
from reportlab.lib.pagesizes import letter, A4, landscape
from reportlab.platypus.tables import Table, TableStyle


doc = SimpleDocTemplate(form1.pdf',pagesize=landscape(A4))
elements=[]

data = [['Проверка','Проверка'],
['03','04']]

t=Table(data)

elements.append(t)
doc.build(elements)
Русский язык нормально в pdf не отображается. Как прицепить шрифты к таблице?



Отредактировано (Март 23, 2011 04:48:28)

Офлайн

#2 Март 29, 2011 09:22:37

vak
От:
Зарегистрирован: 2007-05-04
Сообщения: 262
Репутация: +  0  -
Профиль   Отправить e-mail  

reportlab Table

Вопрос снят, разобрался.



Офлайн

#3 Июль 28, 2011 17:47:12

igrishaev
От:
Зарегистрирован: 2011-07-28
Сообщения: 7
Репутация: +  1  -
Профиль   Адрес электронной почты  

reportlab Table

Пожалуйста, поделитесь решением, у меня аналогичная проблема.



Офлайн

#4 Июль 29, 2016 16:03:02

zeves095
Зарегистрирован: 2016-02-23
Сообщения: 15
Репутация: +  0  -
Профиль   Отправить e-mail  

reportlab Table

#таблицы импортить отсюда
from reportlab.platypus import Paragraph, Table, TableStyle, Image



#А насчет шрифтов - надо подгрузить свои и зарегистрировать их.. вот пример:

from reportlab.pdfbase.ttfonts import TTFont
from reportlab.pdfbase import pdfmetrics

#шрифт который поддерживает кириллицу
myFontVar = TTFont('myFont', ‘../fonts/myFont.ttf’)

#а теперь регистрируем:
pdfmetrics.registerFont(myFontVar)

#использовать так:
p = canvas.Canvas(response, pagesize=A4)
p.setFont(“myFont”,38)
p.drawString(100,100, “тестовая строка”)



UPDATE: на формуме кстати пока свой вопрос искал нашел по твоей теме (в общем то же самое что и я сказал) - http://python.su/forum/topic/1098/

Отредактировано zeves095 (Июль 29, 2016 16:12:34)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version