Уведомления

Группа в Telegram: @pythonsu

#1 Июль 28, 2011 15:07:05

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

reportlab перенос строки

Здравствуйте подскажите пожалуйста как осуществить перенос строки в формируемой pdf-ке. Код который формирует pdf и в нем в таблицу

from reportlab.pdfbase import pdfmetrics
from cStringIO import StringIO
from reportlab.lib.pagesizes import letter, A4
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib import colors
from reportlab.lib.units import cm, inch

def print1(request):
response = HttpResponse(mimetype='application/pdf')
response['Content-Disposition'] = 'attachment; filename=3.pdf'
temp = StringIO()
doc = SimpleDocTemplate(temp, pagesize=A4, rightMargin=72, leftMargin=72, topMargin=82, bottomMargin=18)
Catalog = []
styles = getSampleStyleSheet()
styles.add(ParagraphStyle(name='Justify', wordWrap=True))
header = Paragraph("Bnopnya", styles['Normal'])
Catalog.append(header)
style = styles['Normal']
headings = ("dsddfffffffffffffffffffffddddddfffffffffffsd", 'Normal')
t = Table([headings], [5*cm, 2*cm])
t.setStyle(TableStyle(
[('GRID', (0,0), (1,-1), 2, colors.white),
('LINEBELOW', (0,0), (-1,0), 2, colors.white),
('BACKGROUND', (0, 0), (-1, 0), colors.white)]))
Catalog.append(t)
doc.build(Catalog)
response.write(temp.getvalue())
temp.close()
return response
Подскажите как определить правильно определить для Paragraphstyle wordWrap=true, чтобы переносить слова при достижении границы ячейки



Офлайн

#2 Авг. 23, 2011 10:41:38

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

reportlab перенос строки

Проблему решил, извиняюсь за задержку, был в отпуске. Может кому поможет, вот код

from reportlab.pdfbase import pdfmetrics
from cStringIO import StringIO
from reportlab.lib.pagesizes import letter, A4
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib import colors
from reportlab.lib.units import cm, inch

def print1(request):
response = HttpResponse(mimetype='application/pdf')
response['Content-Disposition'] = 'attachment; filename=3.pdf'
temp = StringIO()
doc = SimpleDocTemplate(temp, pagesize=A4, rightMargin=72, leftMargin=72, topMargin=82, bottomMargin=18)
Catalog = []
styles = getSampleStyleSheet()
style = styles['Normal']
styles.add(ParagraphStyle(name='Justify', wordWrap=True, fontSize=12))
header = Paragraph(u'%s' % '''As fffddddfffff dddddddddd dffffffffffffff df ddddddfdkjfkdjfkjdkfjkdjfdfkjkdf''', styles['Justify'])
Catalog.append(header)
row1 = [['dsddfffffffdghghh'],
[header]]
t = Table(row1, 1*[7*cm], 2*[4*cm])
t.setStyle(TableStyle(
[('GRID', (0,0), (1,-1), 1, colors.black),
('LINEBELOW', (0,0), (-1,0), 1, colors.white),
('BACKGROUND', (0, 0), (-1, 0), colors.pink)]))
Catalog.append(t)
doc.build(Catalog)
response.write(temp.getvalue())
temp.close()
return response



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version