本文整理汇总了Python中report.Report.print_report方法的典型用法代码示例。如果您正苦于以下问题:Python Report.print_report方法的具体用法?Python Report.print_report怎么用?Python Report.print_report使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类report.Report
的用法示例。
在下文中一共展示了Report.print_report方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: render_data
# 需要导入模块: from report import Report [as 别名]
# 或者: from report.Report import print_report [as 别名]
def render_data(self, request):
from report import Report, Paragraph, Spacer, Table
from django.http import HttpResponseRedirect
from mysite.urls import tmpDir, tmp_url
cells=[cell_format(a) for a in self.cells]
rn=request.REQUEST.get("reportname",'')
title=rn and rn or self.title
if self.head=="":
heads=[k for k in self.data[0].keys()]
else:
heads=self.head
file_name=u"%s_%s.pdf"%(title, datetime.datetime.now().strftime("%Y%m%d%H%M%S"))
filecode=request.REQUEST.get("fielcode",'gb18030')
whs=colwidths = [len(i.encode(filecode)) for i in heads]
wcells=[[len(item.encode("gb18030")) for item in line] for line in cells[:40]]
wcells.insert(0, whs)
chars_cnt=sum(wcs)
page_size=get_page_size(chars_cnt)
p=Report()
p.set_page_size(page_size[1], page_size[2])
allws=min(6, max(3.7, 2.85*(p.width-23)/chars_cnt)) #计算每个字符的最大可能宽度
page_head=(Paragraph(title, p.style_title), )
grid_head=[Paragraph(col_text, p.style_grid_head) for col_text in heads]
p.colwidths=[(allws*item or 20) for item in wcs]
p.grid_head_height=20
p.row_height=15
p.print_report(cells, page_size[3], grid_head, page_head, file_name=u"%s/%s"%(tmpDir(), file_name))
f="/"+tmp_url()+file_name
return HttpResponseRedirect(f.encode("utf-8"))