Rails宝石“Axlsx”/“Rails-Axlsx” - 添加图像
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Rails宝石“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
以上是关于Rails宝石“Axlsx”/“Rails-Axlsx” - 添加图像的主要内容,如果未能解决你的问题,请参考以下文章