    # File lib/RMagick.rb, line 1061
            def initialize(img, x, y, width, height)
                img.check_destroyed
                if width <= 0 || height <= 0
                    Kernel.raise ArgumentError, "invalid geometry (#{width}x#{height}+#{x}+#{y})"
                end
                if x < 0 || y < 0 || (x+width) > img.columns || (y+height) > img.rows
                    Kernel.raise RangeError, "geometry (#{width}x#{height}+#{x}+#{y}) exceeds image boundary"
                end
                @view = img.get_pixels(x, y, width, height)
                @img = img
                @x = x
                @y = y
                @width = width
                @height = height
                @dirty = false
            end