# File lib/RMagick.rb, line 766 def initialize(img, x, y, width, height) if width <= 0 || height <= 0 raise ArgumentError, "invalid geometry (#{width}x#{height}+#{x}+#{y})" end if x < 0 || y < 0 || (x+width) > img.columns || (y+height) > img.rows 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