我正在尝试将Rails的Active Storage中的图像嵌入到对虾PDF中。
这是我在Prawn PDF班上得到的:
path = @view.rails_blob_url(@logo, :host => "localhost:3000", :protocol => "http", :locale => nil)
image(path, :vposition => :center)
当我尝试打开PDF时,出现此错误:
InpicesController#show中的
当我将完全相同的URL复制到浏览器中时,图像将按预期显示。 5分钟后它到期(?)。
我在这里想念什么?
如何显示PDF中的图像?
为什么可以在浏览器中而不在我的PDF中渲染图像?
我已经花了一整天的时间试图让它今天开始工作,但无济于事。
答案 0 :(得分:0)
试一下:
image ActiveStorage::Blob.service.send(:path_for, @company.logo_image.key), at: [X, Y], width: DESIRED_WIDTH
logo_image
是实际的ActiveStorage :: Attached :: One对象。
例如
class Company
has_one_attached :logo_image
end
此外,我相信到目前为止,仅支持两种类型:png和jpg。
答案 1 :(得分:0)
这对我有用:
def initialize_globals
logo_from_object = @organization.logo
@logo = StringIO.open(logo_from_object.download)
..
..
..
end
def print_header
image @logo, scale: 0.10
end