Skip to content

Instantly share code, notes, and snippets.

@Bryukh
Last active December 19, 2015 04:28
Show Gist options
  • Save Bryukh/5897179 to your computer and use it in GitHub Desktop.
Save Bryukh/5897179 to your computer and use it in GitHub Desktop.
from svg import SvgManipulationField
from svg import rotate, scale, resize, png
def scale(xml, scale_factor):
scale_width, scale_height = scale_factor
return scaled_xml
class TestModel(models.Model):
logo = SvgManipulationField(
verbose_name="blabla",
upload_to="root/",
versions = [
{
"name": "small",
"manipulations": [(scale, [2, 2]), (rotate, 30)],
"converter": png,
"extension": "png"
"default_url": DEFAULT_URL
},
{
"name": "big_jpeg",
"manipulations": [(resize, [1024, 1024]), (recolour, {"#FFFFFF": "#000000")],
"converter": jpeg,
"extension": "jpg"
"default_url": DEFAULT_URL
}
]
)
def some_view(request):
objs = TestModel.objects.all()
some = objs[0]
print(some.logo.small_url)
print(some.logo.url)
print(some.logo.big_jpeg_url)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment