我刚学习 Ruby,并想知道如何生成报告和发票(包括徽标、地址字段、页脚、可变数量的发票项目(有时会导致多于一页),将支付金额从一页带到另一页,自由浮动的两列文本(左右对齐)位于现金信息下方)。
目前,我从操作系统中获取一个画布(匹配打印机规格),并使用一些绘图、移动、线条、文本和进纸 API 函数进行一些繁重的计算,以实现文本块移动(类似 TeX )。
在 Ruby 中,这该怎么做?
是构建 .odt 并将其发送到 OpenOffice 或 .tex 并将其发送到 LaTeX 吗?
还是有任何免费的库可以为我完成所有这些事情,所以我只需要提供相关部分,并让 Ruby 进行文本格式化处理?
编辑:
具体而言,我想在第一页(DIN-A4 格式,但也可能是信件)的特定位置放置公司徽标,页脚应出现在每一页上,地址框出现在第一页上。其余的都应该是自由浮动的文本块,具有左右对齐,粗体字出现在文本中间。
例如:
目前,我从操作系统中获取一个画布(匹配打印机规格),并使用一些绘图、移动、线条、文本和进纸 API 函数进行一些繁重的计算,以实现文本块移动(类似 TeX )。
在 Ruby 中,这该怎么做?
是构建 .odt 并将其发送到 OpenOffice 或 .tex 并将其发送到 LaTeX 吗?
还是有任何免费的库可以为我完成所有这些事情,所以我只需要提供相关部分,并让 Ruby 进行文本格式化处理?
编辑:
具体而言,我想在第一页(DIN-A4 格式,但也可能是信件)的特定位置放置公司徽标,页脚应出现在每一页上,地址框出现在第一页上。其余的都应该是自由浮动的文本块,具有左右对齐,粗体字出现在文本中间。
例如:
pdf.column.blocktext("Hello Mr. P\nwe have [b]good news[/b] for you. bla bla bla and so on. Please keep this text together (no page break)...");
pdf.column.floatingblock("This is another block, that should be printed, and can be broken over more than one column...");
这段文字的意思是希望在纸上使用公司字体,文本呈现两端对齐,并且如果文本到达页面底部,应该自动换到下一列/页。
仔细想想,这正是LaTeX所擅长的。