相关疑难解决方法(0)

为什么这个RMagick调用会产生分段错误?

我一直在撞墙,试着弄清楚这里出了什么问题,我肯定(或者更希望)这是一个相当明显的东西,我忽略了.我使用的是Ruby 1.9.1,Sinatra 1.0和RMagick 2.13.1.ImageMagick和RMagick已正确安装并正常运行 - 我已成功操作并保存了来自irb的图像.

params数组的相关部分(为便于阅读而格式化更改):

{"admin_user_new_image_file"=>
    {
        :filename=>"freddie-on-shetland-pony.png",
        :type=>"image/png", 
        :name=>"admin_user_new_image_file", 
        :tempfile=>#<File:/var/folders/a7/a7pO5jMcGLCww9XBGRvWfE+++TI/-Tmp-/RackMultipart20100514-20700-o2tkqu-0>,
        :head=>"Content-Disposition: form-data; name=\"admin_user_new_image_file\"; filename=\"freddie-on-shetland-pony.png\"\r\nContent-Type: image/png\r\n"
    }
}
Run Code Online (Sandbox Code Playgroud)

相关代码:

post "/admin/user/:account_name/image/new/" do
  if params[:admin_user_new_image_file][:tempfile]
    thumbnail = Magick::Image.read("png:"+params[:admin_user_new_image_file][:tempfile].path).first
  end
end
Run Code Online (Sandbox Code Playgroud)

错误(第229行是以"thumbnail ="开头的行:

config.ru:229: [BUG] Segmentation fault
ruby 1.9.1p376 (2009-12-07 revision 26041) [i386-darwin10.3.0]

-- control frame ----------
c:0042 p:---- s:0196 b:0196 l:000195 d:000195 CFUNC  :read
c:0041 p:0121 s:0192 b:0192 l:001ab8 d:000191 LAMBDA config.ru:229
c:0040 p:---- s:0189 b:0189 l:000188 d:000188 FINISH
c:0039 p:---- s:0187 b:0187 l:000186 d:000186 CFUNC  :call
c:0038 p:0018 …
Run Code Online (Sandbox Code Playgroud)

ruby rmagick segmentation-fault sinatra ruby-1.9.1

69
推荐指数
5
解决办法
1万
查看次数

carrierwave + mini_magick gems =不是图像错误

我正在使用:

- carrierwave 0.6.0
- rails 3.2.1
- mini_magick 3.4
- ruby 1.9.2p290
Run Code Online (Sandbox Code Playgroud)

在图片上传过程中,我想调整上传图片的大小:

(image_uploader.rb)
process :resize_to_fit => [200, 200]
Run Code Online (Sandbox Code Playgroud)

但图片上传后我遇到了一个错误:

1 error prohibited this organization from being saved:
Image image Failed to manipulate with MiniMagick, maybe it is not an image? Original Error: MiniMagick::Invalid
Run Code Online (Sandbox Code Playgroud)

PS.如果我没有调整大小,图像上传工作正常.

PS2.我试着添加config/environment.rb:

require 'rubygems'
require "mini_magick"
Run Code Online (Sandbox Code Playgroud)

但没有成功(仍然没有工作 - 顺便说一下.当使用mini_magick作为宝石时是否需要?)

image-resizing ruby-on-rails-3 carrierwave minimagick

10
推荐指数
1
解决办法
7993
查看次数

用Minimagick替换Rmagick后,获取'identify.im6:此图像格式没有解码委托'错误

在我的Rails应用程序中,我刚删除Rmagick并添加Minimagick.Rmagick太重了.Rmagick的情况很好但是在minimagick中我得到以下错误:

MiniMagick::Invalid: `identify /tmp/mini_magick20150518-10411-1qz42x8` failed with error:
identify.im6: no decode delegate for this image format `/tmp/mini_magick20150518-10411-1qz42x8' @ error/constitute.c/ReadImage/544.
from /home/pubudu/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/mini_magick-4.2.4/lib/mini_magick/image.rb:200:in `rescue in validate!'
Run Code Online (Sandbox Code Playgroud)

文件网址:

[8] pry(main)> file.file.file
=> "/home/pubudu/Projects/istockseller/public/store/photos/thpubs/istockseller-13642162-wallhaven-61582.jpg"
Run Code Online (Sandbox Code Playgroud)

我试图运行的代码:

MiniMagick::Image.read(file.file.file).first
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails imagemagick minimagick

9
推荐指数
1
解决办法
1271
查看次数

如何使用Carrierwave在rails中将PDF的第一页作为图像?

Imagemagick和mini_magick gem都已安装,但我上传pdf时无法保存模型.

在尝试创建模型的新实例时,我收到以下错误:

Pdf Failed to manipulate with MiniMagick, maybe it is not an image?

我在这做错了什么?我的意图是使用以下所示的解决方案:http://afreshcup.com/home/2012/9/27/thumbnailing-pdfs-with-minimagick.html

我的上传者:

class PrivatePdfUploader < CarrierWave::Uploader::Base
  include CarrierWave::MiniMagick

  storage :file

  def store_dir
    "uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
  end

  def default_url
    "/images/fallback/" + [version_name, "default.png"].compact.join('_')
  end

  version :web_thumb do
    process :thumbnail_pdf
  end

  def thumbnail_pdf
    manipulate! do |img|
      img.format("png", 1)
      img.resize("150x150")
      img = yield(img) if block_given?
      img
    end
  end

end
Run Code Online (Sandbox Code Playgroud)

ruby-on-rails carrierwave

6
推荐指数
1
解决办法
597
查看次数