所以我尝试使用 Prawn gem 将画布的 PNG 图像嵌入到 PDF 中。 Base64字符串是使用canvas的toDataURL()函数生成的。由于图像只需要在 PDF 中,我试图避免将其保存在服务器上。 Params[:base64string] 已正确传递到服务器。
但是,我正在尝试使用
image = Prawn::Images::PNG.new(base64string)
创建图像,但我得到 NoMethodError: undefined method `unpack' for nil:NilClass。
有什么想法我做错了什么或者应该如何正确完成?
found here https://groups.google.com/forum/?fromgroups=#!topic/prawn-ruby/zDh_dytNgfg:
虾想要一个文件路径而不是编码的图像数据。您可以使用临时文件:
require 'prawn'
require 'tempfile'
require 'active_support' # for base64
Prawn::Document.generate('/tmp/test.pdf') do
file = Tempfile.new('image')
file.write ActiveSupport::Base64.decode64(image)
file.close
image file.path
end
希望这可以帮助!
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)