    #! /usr/local/bin/ruby -w
    require 'RMagick'

    # Demonstrate the Image#implode method

    jj = Magick::Image.read('images/Jean_Jacket.jpg').first
    jj = jj.scale(250.0/jj.rows)

    # You can implode or explode by specifying a negative argument.
    # Do both, and add a label so it's easy to see which is which.
    jjsmall = jj.implode(0.25)
    jjsmall['Label'] = 'implode(0.25)'
    jjbig = jj.implode(-.5)
    jjbig['Label'] = 'implode(-0.5)'

    # Prepare to make a montage by adding both images
    # to an ImageList object.
    res = Magick::ImageList.new
    res << jjsmall
    res << jjbig

    both = res.montage {
        self.geometry = "#{res.columns}x#{res.rows}+5+5"
        self.tile = "2x1"
        }

    # Give the montage a black border
    both = both.border(1,1,'black')

    #both.display
    both.write('implode.jpg')
    exit