- 浏览: 300735 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
masuweng:
如何给新人机会 -
masuweng:
多sql结果集按列合并新结果报表实现方案 -
Ahe:
赞
坚持长跑方能赢 -
masuweng:
好好好
程序员如何更好的了解自己所做的事情 -
小楠人:
laoguan123 写道楼主好,使用过一些excel导入导出 ...
excell导入导出
方案一:基于web页面的打印生成pdf
在linux上先安装wkhtmltopdf这个软件。再在需要调用的地方写命令行。
system("wkhtmltopdf http://www.baidu.com /fullcalendarBranch/public/my_web_site.pdf")
方案二:生成pdf工具
在linux上先安装wkhtmltopdf这个软件。再在需要调用的地方写命令行。
system("wkhtmltopdf http://www.baidu.com /fullcalendarBranch/public/my_web_site.pdf")
方案二:生成pdf工具
gem 'prawn' gem 'prawn-table'
class OrderPdf < Prawn::Document extend ActiveSupport::Autoload autoload :PrawnTable def initialize(order) super() font_families["msyh"] = { :normal => { :file => "#{Rails.root}/public/pdf/gkai00mp.ttf" }, :bold => { :file => "#{Rails.root}/public/pdf/gkai00mp.ttf" } } @order = order # font "Times-Roman", :size => 13 do font "msyh", :size => 13 do logo company orders order_item end end def logo bounding_box [0, bounds.top], :width => bounds.width do image "#{Rails.root}/app/assets/images/coa_logo1.png", :width => 190, :height =>90 end end def company bounding_box [250, bounds.top - 30], :width => bounds.width do text "COMMERCIAL INVOICE", :size => 24, :styles => [:bold, :italic] text "#{@order.contact.company.name}" move_down 8 text "Date: #{@order.created_at.format_date(:date)}" end end def orders bounding_box [0, bounds.top - 120], :width => bounds.width do text "To" move_down 8 text "#{@order.address.contact_person}" move_down 8 text "Phone: #{@order.address.tel}" move_down 8 text "Email: #{@order.address.email}" move_down 8 text "Address: #{@order.address.address}" end bounding_box [250, bounds.top - 120], :width => bounds.width do text "Invoice: #{@order&.invoice}" move_down 8 text "Order ID: #{@order.uuid}" move_down 8 text "Your PO#: #{@order.po}" end end def order_item bounding_box [0, bounds.top - 290], :width => bounds.width do stroke_horizontal_rule items = Array.new() { Array.new() } items[0] = ["Catalog No.", "Product", "CAS No.", "Payment Due", "Subtotal"] @order.order_items.each_with_index do |item, index| items[index + 1] = [item.chemical.catalog_no, item.chemical.name, item.chemical.cas, item&.overdue_date, "$" + (format "%0.2f", item.amount).to_s ] end th_style = { align: :center, valign: :center, size: 14, font_style: :bold, height: 30, background_color: 'eeeeee' } td_style = { align: :center, valign: :center, size: 12 } options = { position: :center, width: bounds.width } table(items, options) do row(0).style th_style row(1..-1).style td_style end move_down 8 text "* According to and weight of the above products, a total of $#{@order.handling_fee} package fee will be charged", :size => 10 move_down 20 text "Shipping: $#{@order.shipping_fee}", :size => 16, :styles => [:bold, :italic], :align => :right move_down 4 text "Total: $#{@order.amount}", :size => 16, :styles => [:bold, :italic], :align => :right move_down 10 text "Payment Terms: #{Order.enum_i18n(:payment_method, @order.payment_method)}", :size => 16, :styles => [:bold, :italic], :align => :left move_down 10 text "Overdue payment may defer new quotation and order by iChemical.", :size => 12, :styles => [:bold, :italic], :align => :left end end end
pdf = OrderPdf.new(@order) send_data pdf.render, filename: 'iChemical Invoice-' << @order.uuid << '.pdf', type: "application/pdf", disposition: "attachment"
发表评论
-
git仓库创建
2020-09-04 15:33 708推送现有文件夹 cd existing_folder git ... -
puma高并发
2020-08-19 09:31 475nginx突发大量502报错 top看一下,cpu的占用并不高 ... -
searchkick
2019-04-10 11:30 0# 通用查询块(条件) def general_ ... -
导入线下excell业务数据按权重匹配线上数据
2019-03-07 11:00 890业务场景:(系统间还没有接口对调,订单号暂时需要线下处理) 线 ... -
两对象同时映射一对一和一对多
2019-02-20 10:14 835class Kpi::Team < Applicat ... -
ruby一些类加载方式
2018-12-21 10:12 564require_dependency 'order/sco ... -
基于ruby的gem remotipart的异步上传文件
2018-12-21 10:11 530针对某一对象保存实例化之前,异步上传图片保存。 gem ' ... -
基于html2canvas的长图分享
2018-12-21 10:11 1155<span class="ui label ... -
rails处理上传读取excell&生成excell
2018-12-20 14:15 969gem 'spreadsheet' gem 'roo', ... -
基于ruby Mechanize的爬虫
2018-12-20 13:09 668def self.sang_carwler ... -
一些常用加密方式
2018-12-20 13:02 730sign = OpenSSL::Digest::SHA256. ... -
ruby 调用restful接口示例
2018-12-20 12:02 925链接参数中添加token def self.query_p ... -
rails错误日志记录
2018-12-19 14:41 757Rails中对日志的处理采用的是“消息-订阅”机制,各部分组件 ... -
railsAPI接收Base64文件
2018-12-18 11:05 1038tmp_dir = " ... -
ruby 调用savon接口示例
2018-12-18 10:51 1016例子一 module Api module Aob ... -
关于国际商城现货展示与购物车的费用设计
2018-11-15 18:34 441关于国际商城现货展示 ... -
基于多线程的全局变量
2018-10-31 19:50 1159def current_nation def ... -
hash最小值过滤算法
2018-10-31 09:52 1084[["数量","包装" ... -
阿里云裸机部署rails运用
2018-10-08 20:33 1382登录阿里云后首先 sudo apt-get update a ... -
打包订单单据发给货代
2018-09-11 15:43 1179pdf&excell&png # rend ...
相关推荐
### Java基础之Rails命令大全知识点解析 #### 一、Rails 命令概述 Rails 是一个用于 Web 开发的框架,它基于 Ruby 语言。Rails 遵循 MVC(Model-View-Controller)架构模式,使得 Web 应用程序的开发更加高效、简洁...
数据导出是 web 应用中常见的需求,例如生成 CSV、Excel 或 PDF 文件供用户下载。Exporter 类库通常包含一系列方法,用于格式化数据、生成文件并提供下载链接。Rails Exporter 可能会利用 ActiveRecord 查询数据,并...
- **.pages**:这是Apple的Pages软件创建的文档格式,Yomu可能需要将.pages文件导出为更通用的格式(如.doc或.pdf)再进行处理。 - **.odt**:OpenDocument Text,是开放源码的文档格式,通常由LibreOffice和...
### 技术选择指南:Ruby、Go、Java、Rails、Vue、React #### 一、技术选型概览 在进行技术选型时,需要综合考量项目的特点、团队的技术背景等多个方面。本篇将从以下几个角度对Ruby、Go、Java、Rails、Vue、React...
Fusioncharts 导出器处理程序 Ruby on Rails 的 FusionCharts 导出处理程序。安装将此行添加到应用程序的 Gemfile 中: gem 'fusioncharts_exporter'然后执行: $ bundle介绍它是什么? FusionCharts Suite XT 使用 ...
FusionCharts的离线导出服务允许用户在本地环境中,无需互联网连接,就能将图表导出为不同的格式,如JPEG、PNG等图片格式以及CSV、PDF、Excel等文件格式。这样不仅方便了数据的保存和分发,还能确保数据的安全性,...
2. **导出模块**: 在编译模块时,需要设置模块的输出路径,生成SWF文件。 3. **导入模块**: 在主应用程序中,通过`<mx:ModuleLoader>`组件来引用和加载模块。可以指定模块的URL,或者在本地文件系统中引用模块SWF。...
在实际应用中,Ruby-Shrimp可以与其他Ruby框架,如Rails或Sinatra结合使用,为Web应用程序提供PDF导出功能。例如,在Rails中,你可以在控制器中创建一个动作,使用Ruby-Shrimp生成PDF,然后将其作为HTTP响应返回给...
项目管理工具Redmine: 这是基于Ruby+Rails框架开发的一套跨平台项目管理系统, 支持多种数据库,除了有基本的项目管理功能外,还有不少自己独特的功能,例如提供wiki、新闻台、时间跟踪、feed聚合、导出pdf等待,还...
- **生成XML**:为导出数据或与其他系统集成提供XML格式的数据输出。 - **扫尾工作**:完成项目的所有收尾工作,包括文档编写、测试等。 #### 第13章:任务I: 国际化 - **迭代I1: 启用翻译**:支持多语言界面,...
参考资料《Ruby on Rails 实践.pdf》。 2. 搭建ruby on rails 开发环境并熟悉开发环境。用到的软件在《软件工具》目录。 3. 给学生展示《Ruby on Rails 实践.pdf》中的示例快速建立简单应用。 4. 指导学生...
特征与现代Web浏览器兼容的简洁界面向票证添加评论和文件附件通过电子邮件订阅票证更新(警报) 自动向指定为票证所有者的用户发送电子邮件从仪表板查看最近的故障单活动和时间线统计信息以PDF格式导出票证没有复杂...
它支持多种数据库,除了和 DotProject 的功能大致相当外,还有不少自己独特的功能,例如提供 wiki、新闻台、时间跟踪、feed 聚合、导出 pdf 等待,还可以集成其他版本管理系统和 BUG 跟踪系统,例如 SVN、CVS、TD ...
但如果你发现该功能缺失,可能需要确保Redmine的PDF渲染插件已启用,并且系统中安装了支持PDF预览的软件,如Poppler或PDF.js。 在安装和配置这些插件时,需要注意的是,每次安装新的插件后,都需要执行数据库迁移并...
- **智能报表**:具备工具提示、滚动、缩放等功能,支持导出为图像或CSV格式,以及链接图表功能。 - **JavaScript API**:提供强大的JavaScript API,便于与AJAX应用和JavaScript框架集成。 - **源代码访问**:提供...
文中提及了Zope的替代品,但是未提供具体信息,通常替代品可能包括其他Web应用开发框架如Django、Rails或商业产品如WebSphere。 #### Zope社区 Zope拥有活跃的开发者和用户社区,提供支持、分享经验和贡献代码。 #...
将发票导出为PDF 创建估算并将其发送给您的客户 将估算值转换为发票 将估算值导出为PDF 接收已发送发票的付款 部分付款跟踪 通过贝宝和信用卡接收付款 列表页面过滤器 使用弹性搜索的全文搜索功能 运行项目的时间...
将发票导出为PDF 创建估算并将其发送给您的客户 将估算值转换为发票 将估算值导出为PDF 接收已发送发票的付款 部分付款跟踪 通过贝宝和信用卡接收付款 列表页面过滤器 使用弹性搜索的全文搜索功能 运行项目的时间...
Spring4GWT GWT Spring 使得在 Spring 框架下构造 GWT 应用变得很简单,提供一个易于理解...可以将网络图导出为 GIF, JPEG, PNG, PPM, ARP and PNML (XML based)文件格式。使用了优秀的JHotDraw 5.2 框架。 activemq...