Gem mini_magic 在进行处理远程二维码图片的路径问题

zhujinshou · 2014年08月07日 · 最后由 zhujinshou 回复于 2014年08月09日 · 2180 次阅读

今天在进行项目开发时,需要对二维码进行添加标示符的处理:但在执行下面代码后出现了:Errno::ENOENT: No such file or directory 错误(注意我是对远程图片路径进行请求) #为二维码生成标示符

def make_qr_flag(image_url,content)
   image = MiniMagick::Image.open(image_url)

   image.combine_options do |c|
     c.gravity 'South'
     c.pointsize '20'
     c.draw "text 3,3 '#{content}'"
     c.fill 'green'
   end

   image.write(image_url)
   image_url
 end

你这是要把远程图片获取下来 然后加工后 再写回去? !

是的。因此,问问各位大神们,有没有方法解决这个问题?

先另外抓回来存到本地,改写好的文件在上传到远程。 open 和 write 都是对文件来得。

open(remote_url)后是读到本地,write(lcoal_file),你为什么还用write(remote_url)呢,难道你本地的文件也叫这个名字?如果是open时报错,确认你的 url 是absolute_path

image.write(image_url) 这个有问题!这里应该写本地文件的路径,然后再上传到远程端!

#4 楼 @dddd1919 write(local_file) 中的参数是当地“路径”,获益匪浅,Thanks!!

需要 登录 后方可回复, 如果你还没有账号请 注册新账号