def render(self, context): args = [ self.image_source.resolve(context), self.width.resolve(context), self.height.resolve(context) ] if self.dest is not None: args.append(self.dest.resolve(context)) else: args.append(None) if self.proc is not None: args.append(self.proc.resolve(context)) else: args.append(None) for arg in self.extra_args: args.append(arg.resolve(context)) kwargs = dict( [(k, v.resolve(context)) for k, v in self.extra_kwargs.items()] ) try: thumb = Thumbnail(*args, **kwargs) except: thumb = '' else: thumb = force_unicode(thumb).replace(settings.MEDIA_ROOT, '') thumb = iri_to_uri('/'.join(thumb.strip('\\/').split(os.sep))) if self.as_var: context[self.as_var] = thumb return '' else: return thumb
def render(self, context): vars = { "source": self.image_source.resolve(context), "width": self.width.resolve(context), "height": self.height.resolve(context), } if self.quality is not None: vars["quality"] = self.quality.resolve(context) if self.format is not None: vars["format"] = self.format try: thumb = Thumbnail(**vars) except: thumb = "" else: thumb = force_unicode(thumb).replace(settings.MEDIA_ROOT, "") thumb = iri_to_uri("/".join(thumb.strip("\\/").split(os.sep))) return thumb