
我们俩的联系方式![]()
Similar entries最新评论
友情链接导航 |
用 python/reportlab 生成 PDF
由 qyb 于 星期一, 2009-11-23 08:50 发表
达达这学期关于加减法运算的一个要求是速度——8分钟以内做120道题为及格,5分钟做完是100分. 为了平时训练,偶周末就写了个脚本产生一组题目,并生成 PDF 以供打印。 网上的入门教程多是 reportlab 的 pdfgen.canvas 的例子,不过我这里是要打印 120 道题出来,就得用 platypus.Table 来排版了. 表格的数据用一个 list 来表示;其每一个元素仍然是一个 list,就是每行(row);这个 list 里的每个元素是字符串,是 cell 的数据了。 准备好 table 后,用 platypus.SimpleDocTemplate 来生成 pdf。它最后处理一个 list,把这个 list 里的对象挨个渲染出来,这个有点像浏览器依次画出 block 级别的 div。 示例如下: from reportlab import platypus
from reportlab.lib.units import inch def genTable(): doc = platypus.SimpleDocTemplate(fname, topMargin=0.9*inch, bottomMargin=0.9*inch, title='DaDa Math', author='qyb') elements = [] doc.build(elements) Getting Started With ReportLab 这篇文档给我很大帮助,推荐阅读。 最后要说的是,Linux 下配置佳能 LBP 3018 非常麻烦,我尝试了10分钟后没有搞定就放弃努力回到 XP 下打印了。CUPS 发展这么多年,佳能也是大厂,没想到 Linux 桌面上用打印机还是如此困难! |
The gentleman is ended,
The gentleman is ended, QinFang also but is their being a traveler is just, coach outlet perhaps numerous many years after however take into consideration coach outlet of the type of a past, but apparently is coach outlet unlikely just before what contact.
这事儿要我做的话,估计先生成latex源文件再编译了。
这事儿要我做的话,估计先生成latex源文件再编译了。
如果对 latex 熟悉倒也是可以,不失为一个通用的法子.
如果对 latex 熟悉倒也是可以,不失为一个通用的法子.
看来还是得用HP了.
看来还是得用HP了.
http://thaitruongvan.blogspot
http://thaitruongvan.blogspot.com/2009/08/install-canon-laser-printer-in-fedora.html
回头有空了再试试....
让我恼火之处之一是 canon 自己还要启动某服务,而不是让 cups 完成一切
另外就是卡在 SELinux 上.
10分钟就放弃了。 一般Google调研一番再实践几下怎么
10分钟就放弃了。
一般Google调研一番再实践几下怎么也要半个小时以上。
我10分钟后大概就知道半个小时也搞不定...
我10分钟后大概就知道半个小时也搞不定...