def thumb(self):
		if not self.image: return ""
		import art_cloud.front.templatetags.imagetags as imagetags
		import art_cloud.imaging as imaging
		try:
			file = settings.MEDIA_URL + self.image.path[len(settings.MEDIA_ROOT):]
			filename, miniature_filename, miniature_dir, miniature_url = imagetags.determine_resized_image_paths(file, "admin_thumb")
			if not os.path.exists(miniature_dir): os.makedirs(miniature_dir)
			if not os.path.exists(miniature_filename): imaging.fit_crop(filename, 100, 100, miniature_filename)
			return """<img src="%s" /></a>""" % miniature_url
		except:
			traceback.print_exc()
			return None
Esempio n. 2
0
def squarecrop(file, size_param='100'):
	"""Crop a square image"""
	size = int(size_param.strip())

	filename, miniature_filename, miniature_dir, miniature_url = determine_resized_image_paths(file, "sq" + size_param)
	if not os.path.exists(miniature_dir): os.makedirs(miniature_dir)
	if os.path.exists(miniature_filename) and os.path.getmtime(filename) > os.path.getmtime(miniature_filename): os.unlink(miniature_filename)

	# if the image wasn't already resized, resize it
	if not os.path.exists(miniature_filename):
		image = Image.open(filename)
		image.save(miniature_filename, image.format)
		fit_crop(miniature_filename, size, size)
	return miniature_url
Esempio n. 3
0
def crop(file, size_param="300x255"):
	"""Crop an image (no resizing)"""
	width_param, height_param = size_param.split('x')
	width = int(width_param)
	height = int(height_param)

	filename, miniature_filename, miniature_dir, miniature_url = determine_resized_image_paths(file, size_param)
	if not os.path.exists(miniature_dir): os.makedirs(miniature_dir)
	if os.path.exists(miniature_filename) and os.path.getmtime(filename) > os.path.getmtime(miniature_filename): os.unlink(miniature_filename)

	if not os.path.exists(miniature_filename):
		image = Image.open(filename)
		image.save(miniature_filename, image.format)
		fit_crop(miniature_filename, width, height)
	return miniature_url