Rails Gem “Axlsx” / “Rails-Axlsx” - 添加图片
Rails Gem “Axlsx” / “Rails-Axlsx” - Adding Image
我尝试将一张图片添加到我的 workbook/worksheet。
代码:
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__)
,但使用 "No file found!"
失败
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
我尝试将一张图片添加到我的 workbook/worksheet。
代码:
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__)
,但使用 "No file found!"
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