mirror of
				https://github.com/python-pillow/Pillow.git
				synced 2025-11-04 09:57:43 +03:00 
			
		
		
		
	Merge pull request #6129 from radarhere/merge
This commit is contained in:
		
						commit
						f3a3b20c51
					
				| 
						 | 
				
			
			@ -171,20 +171,37 @@ Rolling an image
 | 
			
		|||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
    def roll(image, delta):
 | 
			
		||||
    def roll(im, delta):
 | 
			
		||||
        """Roll an image sideways."""
 | 
			
		||||
        xsize, ysize = image.size
 | 
			
		||||
        xsize, ysize = im.size
 | 
			
		||||
 | 
			
		||||
        delta = delta % xsize
 | 
			
		||||
        if delta == 0:
 | 
			
		||||
            return image
 | 
			
		||||
            return im
 | 
			
		||||
 | 
			
		||||
        part1 = image.crop((0, 0, delta, ysize))
 | 
			
		||||
        part2 = image.crop((delta, 0, xsize, ysize))
 | 
			
		||||
        image.paste(part1, (xsize - delta, 0, xsize, ysize))
 | 
			
		||||
        image.paste(part2, (0, 0, xsize - delta, ysize))
 | 
			
		||||
        part1 = im.crop((0, 0, delta, ysize))
 | 
			
		||||
        part2 = im.crop((delta, 0, xsize, ysize))
 | 
			
		||||
        im.paste(part1, (xsize - delta, 0, xsize, ysize))
 | 
			
		||||
        im.paste(part2, (0, 0, xsize - delta, ysize))
 | 
			
		||||
 | 
			
		||||
        return image
 | 
			
		||||
        return im
 | 
			
		||||
 | 
			
		||||
Or if you would like to merge two images into a wider image:
 | 
			
		||||
 | 
			
		||||
Merging images
 | 
			
		||||
^^^^^^^^^^^^^^
 | 
			
		||||
 | 
			
		||||
::
 | 
			
		||||
 | 
			
		||||
    def merge(im1, im2):
 | 
			
		||||
        w = im1.size[0] + im2.size[0]
 | 
			
		||||
        h = max(im1.size[1], im2.size[1])
 | 
			
		||||
        im = Image.new("RGBA", (w, h))
 | 
			
		||||
 | 
			
		||||
        im.paste(im1)
 | 
			
		||||
        im.paste(im2, (im1.size[0], 0))
 | 
			
		||||
 | 
			
		||||
        return im
 | 
			
		||||
 | 
			
		||||
For more advanced tricks, the paste method can also take a transparency mask as
 | 
			
		||||
an optional argument. In this mask, the value 255 indicates that the pasted
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user