Railsgem“Axlsx”/“Rails-Axlsx” – 添加图像
我尝试将一个图像添加到我的工作簿/工作表中。
代码 :
wb.add_worksheet(:name => "Doc1", :page_setup => setup, :print_options => options) do |sheet| img = File.expand_path('../logo.jpg', __FILE__) sheet.add_image(:image_src => img, :noMove => true) do |image| image.width = 7 image.height = 6 image.start_at 2, 2 end ... end
但是,如果我打开文档,工作表上没有图像,我该如何解决这个问题呢?
如何正确的图像路径? 对于此测试,我将jpg复制到我的视图文件夹中,但通常是"app/assets/images/logo.jpg"
所有图像。 我尝试使用img = File.expand_path('../assets/images/logo.jpg', __FILE__)
,但它失败并显示“找不到文件!”
https://pramodbshinde.wordpress.com/2013/12/29/design-spreadsheets-using-axlsx-in-rails/上的示例显示以下代码行
img = File.expand_path(Rails.root+'app/assets/images/result.png')
这是另一种可以实现此目的的方法:
码:
img = File.open(Dir.glob("#{Rails.root}/app/assets/images/result.png, "r")
在您设置图像宽度和高度的行中,它们非常小,您可以忽略图像,因为此数字以像素为单位。 尝试将它们设置为更高的数字。
以下对我有用:
img = File.expand_path(Rails.root+'app/assets/images/result.png') sheet.add_image(:image_src => img, :noMove => true) do |image| image.width = 100 image.height = 150 image.start_at 2, 2 end