Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- import Image
- def filmstripOfImages():
- imgpath = '/path/here/'
- files = glob.glob(imgpath + '*.jpg')
- imgwidth = files[0].size[0]
- imgheight = files[0].size[1]
- totalheight = imgheight * len(files)
- filename = 'filmstrip.jpg'
- filmstrip_url = imgpath + filename
- # Create the new image. The background doesn't have to be white
- white = (255,255,255)
- filmtripimage = Image.new('RGB',(imgwidth, totalheight),white)
- row = 0
- for file in files:
- img = Image.open(file)
- left = 0
- right = left + imgwidth
- upper = row*imgheight
- lower = upper + imgheight
- box = (left,upper,right,lower)
- row += 1
- filmstripimage.paste(img, box)
- try:
- filmstripimage.save(filename, 'jpg', quality=90, optimize=1)
- except:
- filmstripimage.save(miniature_filename, 'jpg', quality=90)")
- #!/usr/bin/env python
- import Image
- def makefilmstrip(images, mode='RGB', color='white'):
- """Return a combined (filmstripped, each on top of the other) image of the images.
- """
- width = max(img.size[0] for img in images)
- height = sum(img.size[1] for img in images)
- image = Image.new(mode, (width, height), color)
- left, upper = 0, 0
- for img in images:
- image.paste(img, (left, upper))
- upper += img.size[1]
- return image
- if __name__=='__main__':
- # Here's how it could be used:
- from glob import glob
- from optparse import OptionParser
- # process command-line args
- parser = OptionParser()
- parser.add_option("-o", "--output", dest="file",
- help="write combined image to OUTPUT")
- options, filepatterns = parser.parse_args()
- outfilename = options.file
- filenames = []
- for files in map(glob, filepatterns):
- if files:
- filenames += files
- # construct image
- images = map(Image.open, filenames)
- img = makefilmstrip(images)
- img.save(outfilename)
- $ python filmstrip.py -o output.jpg *.jpg
- filmstripimage.save(filmstrip_url, 'jpg', quality=90, optimize=1)
Add Comment
Please, Sign In to add comment