在ruby中将图像转换为字节数组

时间:2014-02-04 10:25:04

标签: ruby-on-rails ruby

我有一个png图像作为回形针附件,我需要将其作为字节数组发送到Web服务接口。如何将图像文件转换为字节数组?

存在一个问题 How to convert image file to byte array using ruby但它相当陈旧,唯一的答案建议使用RMagick gem(没有示例代码或任何代码)。

RMagick宝石真的需要完成吗?我不想在没有充分理由的情况下添加新宝石。

2 个答案:

答案 0 :(得分:8)

作为二进制文件读取并解压缩

f = File.binread 'image.png'    

f.unpack('B*')
# Outputs like ["0010010101110010000100110000010000010"] 

# Byte Array
# "abc".unpack('C*')
#=> [97, 98, 99]

f.unpack('C*')

检查here以查找不同的unpack选项

答案 1 :(得分:0)

我认为RMagic是满足您需求的完美解决方案。请检查以下链接:

http://www.imagemagick.org/RMagick/doc/usage.html