用红宝石裁剪图像

时间:2013-12-05 14:01:10

标签: ruby minimagick chunkypng

我试图在我触发的最后一行代码中看到你可以看到的图像:

p.corp!(0,0,p.width,black_last).save('bearbeitet.png')

但不知怎的,我得到了这个错误:

bild.rb:29:in `<main>': undefined method `corp!' for #<ChunkyPNG::Canvas:0x24f34
50> (NoMethodError)

为什么呢?公司的文件: http://rdoc.info/gems/chunky_png/ChunkyPNG/Canvas/Operations#crop-instance_method

我的整个代码:谢谢!

require 'mini_magick'
require 'chunky_png'

i = MiniMagick::Image.open("a.jpg")

i.format('png')

p = ChunkyPNG::Canvas.from_io(StringIO.new(i.to_blob))

black = 0
white = 0
black_last = 0

p.height.times do |y|
  p.width.times do |x|
    if ChunkyPNG::Color.to_hex(p[x, y]) == '#ffffffff'
        white = white + 1
    else
        black = black + 1
        black_last = x
    end
  end
end

p.corp!(0,0,p.width,black_last).save('bearbeitet.png')

1 个答案:

答案 0 :(得分:2)

您错误拼写 crop() corp()

尝试p.crop!(0,0,p.width,black_last).save('bearbeitet.png')