Gem 关于 axlsx 导出 excel 的问题

suffering · 2014年10月14日 · 3464 次阅读

最近项目上需要导出 excel 并快速打印单据. 工作环境:windows xp + google chrome + EPSON-LQ-630K 具体的工作流程如下:

  • click to export excel (.xlsx)
  • open the exported excel
  • click to print 这个流程倒是很简单。直接使用axlsx, 简单好用很快就搞定了。但是在打印时问题出现了: 导出的 excel 的打印尺寸应该是8.5in * 5.5in. 这不是微软默认的打印尺寸,也不是 epson 默认的打印尺寸。所以只能定义一个打印尺寸. 具体参见:http://msdn.microsoft.com/en-us/library/windows/desktop/dd319099v=vs.85).aspx( axlsx提供了丰富的方法来设置pager size, 也提供了自定义尺寸的 options, 但是,实际使用中却怎么也调试不好。

这里的 axlsx 相应的源码:https://github.com/randym/axlsx/blob/master/lib/axlsx/workbook/worksheet/page_setup.rb 读完后发现usePrinterDefaults放在 todo 里。也即是说,即使设置打印机的默认打印纸,也是不行。导出的 excel 默认为设置成Letter格式. ...

果然程序员最痛恨的还是 windows...

大家有没有好的意见?hack axlsx 的方案或直接换个 gem? 已经试过writeexcel,这个更坑。

悲剧地无人理会...

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号