Ejemplo n.º 1
0
def pick_image(show_albums=False, include_metadata=False, original=True, raw_data=False, multi=False):
	if raw_data and not original:
		raise ValueError('`raw_data` can only used in combination with `original`')
	picked_items = _photos.pick_image(show_albums, include_metadata, multi, original)
	if picked_items is None or picked_items == (None, None):
		return picked_items
	return_list = []
	for item in picked_items:
		image_data = None
		metadata = None
		if include_metadata:
			image_data, metadata_json = item
			import json
			metadata = json.loads(metadata_json)
		else:
			image_data = item
		if original:
			if raw_data:
				img = image_data
			else:
				import Image
				from cStringIO import StringIO
				data_buffer = StringIO(image_data)
				img = Image.open(data_buffer)
		else:
			data, w, h = image_data
			import Image
			img = Image.fromstring('RGBA', (w, h), data)
		if include_metadata:
			return_list.append((img, metadata))
		else:
			return_list.append(img)
	if multi:
		return return_list
	return return_list[0]
Ejemplo n.º 2
0
def pick_image(show_albums=False):
	image_info = _photos.pick_image(show_albums)
	if image_info is None:
		return None
	else:
		image_data, w, h = image_info
		import Image
		img = Image.fromstring('RGBA', (w, h), image_data)
		return img