我正在尝试将文件转换为特定格式,以便可以对其进行 to_blob。我知道保存到磁盘并指定扩展名以将其转换为另一种格式的技术,如下所示:
img.write("another_filename.jpg")
我希望在转换过程中不必触摸磁盘。
还有其他方法吗?
我正在尝试将文件转换为特定格式,以便可以对其进行 to_blob。我知道保存到磁盘并指定扩展名以将其转换为另一种格式的技术,如下所示:
img.write("another_filename.jpg")
我希望在转换过程中不必触摸磁盘。
还有其他方法吗?
调用时可以指定格式to_blob
。来自精美手册:
to_blob
img.to_blob
[ { 可选参数 } ]-> 字符串[...]
不需要参数,但是您可以通过Image::Info
在与方法。
所以你可以这样说:
png_bytes = img.to_blob { |attrs| attrs.format = 'PNG' }
是的,界面to_blob
有点奇怪,但奇怪的界面只是使用 ImageMagick 乐趣的一部分。
您也可以在调用之前使用该format=
方法to_blob
:
img.format = 'PNG'
png_bytes = img.to_blob