4

尝试用 rmagick 拼接图像。

一个“马赛克模糊”现有图像如何制作它所代表的马赛克图片?

像: 在此处输入图像描述

4

1 回答 1

2

这就是使用 RMagick 进行马赛克的方法

#!/home/software/ruby-1.8.5/bin/ruby -w
require 'RMagick'

# Demonstrate the mosaic method

a = Magick::ImageList.new

letter = 'A'
26.times do
    # 'M' is not the same size as the other letters.
    if letter != 'M'
        a.read("images/Button_"+letter+".gif")
    end
    letter.succ!
end

# Make a copy of "a" with all the images quarter-sized
b = Magick::ImageList.new
page = Magick::Rectangle.new(0,0,0,0)
a.scene = 0
5.times do |i|
    5.times do |j|
        b << a.scale(0.25)
        page.x = j * b.columns
        page.y = i * b.rows
        b.page = page
        (a.scene += 1) rescue a.scene = 0
    end
end

# Make a 5x5 mosaic
mosaic = b.mosaic
mosaic.write("mosaic.gif")
# mosaic.display
exit
于 2013-10-04T04:37:04.267 回答