Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rmagick不会覆盖EXIF属性_Ruby On Rails_Ruby_Rmagick - Fatal编程技术网

Ruby on rails rmagick不会覆盖EXIF属性

Ruby on rails rmagick不会覆盖EXIF属性,ruby-on-rails,ruby,rmagick,Ruby On Rails,Ruby,Rmagick,我试图使用rmagick 2.13.1和ruby 1.9.3p194重置图像中的Orientation EXIF字段,但似乎无法保存 img = ::Magick::Image::read(local_source_path).first img.get_exif_by_entry() => [["ColorSpace", "1"], ["ExifImageLength", "2448"], ["ExifImageWidth", "3264"], ["ExifOffset", "38

我试图使用rmagick 2.13.1和ruby 1.9.3p194重置图像中的Orientation EXIF字段,但似乎无法保存

img = ::Magick::Image::read(local_source_path).first
img.get_exif_by_entry()
=> [["ColorSpace", "1"],
 ["ExifImageLength", "2448"],
 ["ExifImageWidth", "3264"],
 ["ExifOffset", "38"],
 ["Orientation", "6"]]
也可以通过属性获取方向

img.properties
输出

{"date:create"=>"2014-01-08T17:26:10-08:00",
 "date:modify"=>"2014-01-08T17:26:05-08:00",
 "exif:ColorSpace"=>"1",
 "exif:ExifImageLength"=>"2448",
 "exif:ExifImageWidth"=>"3264",
 "exif:ExifOffset"=>"38",
 "exif:Orientation"=>"6",
 "jpeg:colorspace"=>"2",
 "jpeg:sampling-factor"=>"2x2,1x1,1x1"}
我尝试将方向属性设置为
nil
&保存:

img['exif:Orientation'] = nil
现在,

这看起来是正确的

img.write(local_dest_path)
但是当我使用
get\u exif\u by\u entry

img.get_exif_by_entry('Orientation')[0][1]
我仍然得到6分&不是
nil

当我读取被修改的写入文件时,仍然得到“6”


是否有我缺少的
set\u exif\u by\u entry
功能?有什么想法吗?谢谢

无法设置为
nil
,但我可以在写入过程中将其设置为1

img.write('local_dest_path') { self.orientation = ::Magick::TopLeftOrientation }

常量
未定义
也不起作用。中列出了其他可用值。

i'v立即使用Rmagick 2.13.2进行了尝试,并且效果良好。尝试将rmagick更新为最新版本。2.13.2仍然无法使用:(这里有一个更简单的实验:
img['exif:Orientation']=nil;img['exif:Orientation']
您仍然得到“6”还是零?
img.write('local_dest_path') { self.orientation = ::Magick::TopLeftOrientation }