{ "info": { "author": "jonasvp", "author_email": "jvp@jonasundderwolf.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.3", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "=====================\ndjango-image-cropping\n=====================\n\n.. image:: https://img.shields.io/pypi/v/django-image-cropping.svg\n :target: https://pypi.python.org/pypi/django-image-cropping\n\n.. image:: https://travis-ci.org/jonasundderwolf/django-image-cropping.png?branch=master\n :target: http://travis-ci.org/jonasundderwolf/django-image-cropping\n :alt: Build Status\n\n.. image:: https://coveralls.io/repos/jonasundderwolf/django-image-cropping/badge.png?branch=master\n :target: https://coveralls.io/r/jonasundderwolf/django-image-cropping\n :alt: Coverage\n\ndjango-image-cropping is an app for cropping uploaded images via Django's admin backend using `Jcrop\n`_.\n\nScreenshot:\n\n.. image:: http://www.jonasundderwolf.de/media/images/django_image_cropping_example.png\n\ndjango-image-cropping is perfect when you need images with a specific size for your templates but want your\nusers or editors to upload images of any dimension. It presents a selection with a fixed aspect ratio so your users\ncan't break the layout with oddly-sized images.\n\nThe original images are kept intact and only get cropped when they are displayed.\nLarge images are presented in a small format, so even very big images can easily be cropped.\n\nThe necessary fields, widgets and a template tag for displaying the\ncropped image in your templates are provided.\n\nAlso works with `FeinCMS `_ content types!\n\nInstallation\n============\n\n#. Install django-image-cropping using ``pip``::\n\n pip install django-image-cropping\n\nBy default ``django-image-cropping`` ships with an ``easy-thumbnails``-backend which requires ``easy-thumbnails`` to also be installed\nand added to the ``INSTALLED_APPS``.\n\nThe `easy-thumbnails` backend requires that you adjust the thumbnail processors in your ``settings``::\n\n INSTALLED_APPS = [\n ...\n 'easy_thumbnails',\n 'image_cropping',\n ]\n\n from easy_thumbnails.conf import Settings as thumbnail_settings\n THUMBNAIL_PROCESSORS = (\n 'image_cropping.thumbnail_processors.crop_corners',\n ) + thumbnail_settings.THUMBNAIL_PROCESSORS\n\n\nConfiguration\n=============\n\nAdd an ``ImageRatioField`` to the model that contains the ``ImageField`` for the images you want to crop.\n\nThe ``ImageRatioField`` simply stores the boundaries of the cropped image.\nIt expects the name of the associated ``ImageField`` and the desired size of the cropped image as arguments.\n\nThe size is passed in as a string and defines the aspect ratio of the selection *as well* as the minimum\nsize for the final image::\n\n from django.db import models\n from image_cropping import ImageRatioField\n\n class MyModel(models.Model):\n image = models.ImageField(blank=True, upload_to='uploaded_images')\n # size is \"width x height\"\n cropping = ImageRatioField('image', '430x360')\n\nYou can configure a `size warning`_ if users try to crop a selection smaller than the defined minimum.\n\nAdmin Integration\n=================\n\nAdd the ``ImageCroppingMixin`` to your ``ModelAdmin``::\n\n from django.contrib import admin\n from image_cropping import ImageCroppingMixin\n\n class MyModelAdmin(ImageCroppingMixin, admin.ModelAdmin):\n pass\n\n admin.site.register(MyModel, MyModelAdmin)\n\nIf your setup is correct you should now see the enhanced image widget that provides a selection\narea.\n\n\nBackends\n========\n\ndjango-image-cropping delegates the cropped image generation to a backend.\n\nA backend based on `easy-thumbnails` is provided, but it's possible to use a custom backend.\nThe ``IMAGE_CROPPING_BACKEND`` setting expects a dotted path to a class that implements the required methods.\nYou can omit this setting if you want to use the default backend.\n\nIn case you use a custom backend you can provide an optional dict that will be used to populate the backend's\nconstructor params.\n\nDefault settings::\n\n IMAGE_CROPPING_BACKEND = 'image_cropping.backends.easy_thumbs.EasyThumbnailsBackend'\n IMAGE_CROPPING_BACKEND_PARAMS = {}\n\n\nFrontend\n========\n\ndjango-image-cropping provides a templatetag for displaying a cropped thumbnail.\nAny other processor parameter (like ``bw=True`` or ``upscale=True``) will be forwarded to the backend::\n\n {% cropped_thumbnail yourmodelinstance \"ratiofieldname\" [scale=INT|width=INT|height=INT|max_size=\"INTxINT\"] %}\n\nExample usage::\n\n {% load cropping %}\n \n\nOr generate the URL from Python code in your view::\n\n from image_cropping.utils import get_backend\n thumbnail_url = get_backend().get_thumbnail_url(\n yourmodel.image,\n {\n 'size': (430, 360),\n 'box': yourmodel.cropping,\n 'crop': True,\n 'detail': True,\n }\n )\n\n\neasy_thumbnails\n---------------\n\nYou can also use the standard ``easy-thumbnails`` templatetag with the ``box`` parameter::\n\n {% load thumbnail %}\n {% thumbnail yourmodel.image 430x360 box=yourmodel.cropping crop detail %}\n\nOr generate the URL from Python code in your view::\n\n from easy_thumbnails.files import get_thumbnailer\n thumbnail_url = get_thumbnailer(yourmodel.image).get_thumbnail({\n 'size': (430, 360),\n 'box': yourmodel.cropping,\n 'crop': True,\n 'detail': True,\n }).url\n\n\nModelForm\n=========\n\nIf you want to use the cropping widget outside the admin, you'll need to define the ``ImageField`` as\nan ``ImageCropField``::\n\n from django.db import models\n from image_cropping import ImageCropField, ImageRatioField\n\n class MyModel(models.Model):\n image = ImageCropField(blank=True, upload_to='uploaded_images')\n # size is \"width x height\"\n cropping = ImageRatioField('image', '430x360')\n\n\nAlternatively, override the widget in your ModelForm (you just need to do one of these two, not both!)::\n\n from django import forms\n from image_cropping import ImageCropWidget\n\n class MyModelForm(forms.ModelForm):\n class Meta:\n widgets = {\n 'image': ImageCropWidget,\n }\n\n\nRemember to include the form media in the ```` of your HTML::\n\n \n \n {{ form.media }}\n \n \n {{ form }}\n \n \n\nThe cropping itself happens in the ``ImageRatioField``, the ``ImageCropField`` will still behave like a regular ``ImageField``.\n\nIf you're selectively including or excluding fields from the ModelForm, remember to include the ``ImageRatioField``.\n\n\nMultiple formats\n================\n\nIf you need the same image in multiple formats, simply specify another ``ImageRatioField``.\nThis will allow the image to be cropped twice::\n\n from image_cropping import ImageRatioField, ImageCropField\n\n image = ImageCropField(blank=True, upload_to='uploaded_images')\n # size is \"width x height\"\n list_page_cropping = ImageRatioField('image', '200x100')\n detail_page_cropping = ImageRatioField('image', '430x360')\n\nIn your templates, use the corresponding ratio field::\n\n {% load cropping %}\n {% cropped_thumbnail yourmodel \"list_page_cropping\" %}\n\n\nForeign Keys\n============\n\nIf you need to crop an image contained within another model, referenced by a ForeignKey, the ``ImageRatioField`` is\ncomposed of the ``ForeignKey`` name, a double underscore, and the ``ImageField`` name::\n\n from django.db import models\n from image_cropping.fields import ImageRatioField\n\n class Image(models.Model):\n image_field = models.ImageField(upload_to='image/')\n\n class NewsItem(models.Model):\n title = models.CharField(max_length=255)\n image = models.ForeignKey(Image)\n cropping = ImageRatioField('image__image_field', '120x100')\n\nCropping foreign keys only works in the admin for now, as it reuses the ``raw_id`` widget.\n\n\n.. _free cropping:\n\nFree cropping\n=============\n\nIf you do not need a *fixed* ratio, you can disable this constraint by setting ``free_crop`` to ``True``.\nIn this case the size parameter is the desired minimum and is also used for the size-warning::\n\n from image_cropping import ImageRatioField, ImageCropField\n\n image = ImageCropField(blank=True, upload_to='uploaded_images')\n\n # size is \"width x height\" so a minimum size of 200px x 100px would look like this:\n min_free_cropping = ImageRatioField('image', '200x100', free_crop=True)\n\nUse the ``max_size`` parameter of the templatetag if you want to limit the display size of a thumbnail::\n\n \n\n\nDisabling cropping\n==================\n\nIf you want cropping to be optional, use ``allow_fullsize=True`` as an additional keyword argument for your ``ImageRatioField``.\n\nEditors can now switch off cropping by unchecking a checkbox next to the image cropping widget::\n\n image_with_optional_cropping = ImageRatioField('image', '200x100', allow_fullsize=True)\n\n\nSettings\n========\n\nThumbnail size\n--------------\n\nYou can define the maximum size of the admin preview thumbnail in your ``settings``::\n\n # size is \"width x height\"\n IMAGE_CROPPING_THUMB_SIZE = (300, 300)\n\n.. _size warning:\n\nSize warning\n------------\n\nYou can warn users about crop selections that are smaller than the size defined in the ``ImageRatioField``.\nWhen users try to do a smaller selection, a red border appears around the image.\n\nTo use this functionality for a single image add the ``size_warning`` parameter to the ``ImageRatioField``::\n\n cropping = ImageRatioField('image', '430x360', size_warning=True)\n\nYou can enable this functionality project-wide by adding the following line to your ``settings``::\n\n IMAGE_CROPPING_SIZE_WARNING = True\n\n\nCustom jQuery\n-------------\n\nBy default the image cropping widget embeds a recent version of jQuery.\n\nYou can point to another version using the ``IMAGE_CROPPING_JQUERY_URL`` setting, though compatibility\nissues may arise if your jQuery version differs from the one that is tested against.\n\nYou can also set ``IMAGE_CROPPING_JQUERY_URL`` to ``None`` to disable inclusion of jQuery by the widget.\nYou are now responsible for including ``jQuery`` yourself, both in the frontend and in the admin interface.\n\nCustom backend\n--------------\n\nYou can define a custom backend::\n\n IMAGE_CROPPING_BACKEND = 'image_cropping.backends.easy_thumbs.EasyThumbnailsBackend'\n\nYou can provide an optional dict that will be used to populate the backend's\nconstructor::\n\n IMAGE_CROPPING_BACKEND_PARAMS = {'version_suffix': 'thumb'}\n\nSee the built-in backends on Backends_.\n\n\nTroubleshooting\n===============\n\nThe cropping widget is not displayed when using a ``ForeignKey``.\n Make sure you do **not** add the corresponding image field to ``raw_id_fields``.\n\n\nChangelog\n=========\n\n1.1\n---\n\n- Make django-image-cropping compatible with Django 1.11\n\n1.0.4\n-----\n\n- Move and encapsulate the logic for creating cropped thumbnails to a swappable backend. (`@fgmacedo `_ in #92)\n\n1.0\n---\n\n\"If your software is being used in production, it should probably already be 1.0.0.\" (http://semver.org)\n\n0.9\n---\n\nThis release addresses mainly the test coverage and internal stuff.\n\nNoteable (breaking) changes and things to be considered when upgrading from an older version:\n\n- `django-appconf `_ is now used for handling defaults and settings.\n\n * **Breaking Change**: JQUERY_URL changed to IMAGE_CROPPING_JQUERY_URL as part of this transition.\n\n- The ``cropped_thumbnail`` tag is now based on Django's ``simple tag``.\n\n * **Breaking Change**: Arguments for the the tag now need to be put in quotes.\n * If you are still using Django 1.4 remember that `you can't easily use `_ ``True`` or ``False`` as template tag arguments.\n\n- Any processor parameter (like bw=True or upscale=True) can be used in the ``cropped_thumbnail`` tag.\n\n- Moved inline css to a dedicated ``image_cropping.css`` style sheet\n\n0.8\n---\n\n- **Minimum** requirements changed to **Django 1.4** and **easy-thumbnails 1.4**\n- Added Python 3 compatibility. Python 2.6 is now the minimum required Python version.\n- Added a `free cropping`_ option, so cropping is no longer restricted to fixed ratios.\n- Removed the deprecated ``CropForeignKey`` field.\n\n0.7\n---\n\n- Made the widget for the ``ImageCropField`` overwriteable to allow custom widgets. (Remember to use the ``ImageCroppingMixin`` in the admin as the image cropping widgets are no longer implicitly set.)\n- Updated ``Jcrop`` and ``jQuery`` dependencies.\n- Moved docs to *Read the Docs*: https://django-image-cropping.readthedocs.org", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/jonasundderwolf/django-image-cropping", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "django-image-cropping", "package_url": "https://pypi.org/project/django-image-cropping/", "platform": "", "project_url": "https://pypi.org/project/django-image-cropping/", "project_urls": { "Homepage": "http://github.com/jonasundderwolf/django-image-cropping" }, "release_url": "https://pypi.org/project/django-image-cropping/1.2.0/", "requires_dist": null, "requires_python": "", "summary": "A reusable app for cropping images easily and non-destructively in Django", "version": "1.2.0" }, "last_serial": 4191406, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "d4d9e756362704de84624b589c1a909a", "sha256": "e958455f4bcf8aa54ed80a4416611b39dad2471302dd5b89a87ca8b80b705ad6" }, "downloads": -1, "filename": "django-image-cropping-0.2.tar.gz", "has_sig": false, "md5_digest": "d4d9e756362704de84624b589c1a909a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14012, "upload_time": "2011-10-06T15:55:28", "url": "https://files.pythonhosted.org/packages/70/c7/4684fb2289945c909d3bb6e9cef7588994af5779a0daab1910d91da86029/django-image-cropping-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "1a6620d17ea414a124c28dc1d3c1d942", "sha256": "4de207450940d2c5d3752193400d556eea0d9d441640cae9e843b9938f897b13" }, "downloads": -1, "filename": "django-image-cropping-0.2.1.tar.gz", "has_sig": false, "md5_digest": "1a6620d17ea414a124c28dc1d3c1d942", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14011, "upload_time": "2011-10-06T17:25:53", "url": "https://files.pythonhosted.org/packages/68/cc/181d23a9a83c821982a15a72209c948f5f6ea72f5dcfa727687b45d8e549/django-image-cropping-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "50f5ca34a14d00b13d273c822066a77a", "sha256": "77a4cdeb903767c349497366da21f6fa3bed020698eb87731867bf92e0ba9386" }, "downloads": -1, "filename": "django-image-cropping-0.2.2.tar.gz", "has_sig": false, "md5_digest": "50f5ca34a14d00b13d273c822066a77a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15338, "upload_time": "2011-10-11T14:57:45", "url": "https://files.pythonhosted.org/packages/1f/1a/13d7c47bd583b6355a3344cd641ac17be5e93d4f76573f3899c44da6ddc7/django-image-cropping-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "3511370693bcaa5e37a51f6d4c8a50a7", "sha256": "6e55fa283cc31600386de9bcc3c96d11263fbd7532cf946cbef1ccfcf6558c97" }, "downloads": -1, "filename": "django-image-cropping-0.2.3.tar.gz", "has_sig": false, "md5_digest": "3511370693bcaa5e37a51f6d4c8a50a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15380, "upload_time": "2011-10-12T09:46:59", "url": "https://files.pythonhosted.org/packages/2c/82/40301254387d79d1ed66bb473d64a9f6d6c52b5288e6c56286c2911554f3/django-image-cropping-0.2.3.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "d10d22644171886d4a0afc496686c514", "sha256": "c64f8551a1df1345b75f6364707e9aa9b86dbea75e91bbdeca174fcc2adea8b2" }, "downloads": -1, "filename": "django-image-cropping-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d10d22644171886d4a0afc496686c514", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16098, "upload_time": "2011-11-16T11:23:30", "url": "https://files.pythonhosted.org/packages/f4/20/2ef8f3710a0d03388469187bdd82b5993130c70b6ca0b9958d16413a9a88/django-image-cropping-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "a5d687b9d52dce166ce19e2e65a9c99c", "sha256": "dd332c2f534f1503f3ef5c63815cb5686a1cab8174d08ae0031342a56c8f6be4" }, "downloads": -1, "filename": "django-image-cropping-0.3.1.tar.gz", "has_sig": false, "md5_digest": "a5d687b9d52dce166ce19e2e65a9c99c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16070, "upload_time": "2011-11-16T11:26:17", "url": "https://files.pythonhosted.org/packages/e4/ee/02056308bbe7852e6037386188b982dbe9dab041208dbda64b91a6831984/django-image-cropping-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ec8f5fa70c83f1173e7085ff68cfceed", "sha256": "947d19ea017437e102a480b5d1b2d98da403b389a668245602cbf8804ba819ef" }, "downloads": -1, "filename": "django-image-cropping-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ec8f5fa70c83f1173e7085ff68cfceed", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 11747, "upload_time": "2011-11-16T21:03:32", "url": "https://files.pythonhosted.org/packages/86/1a/b2788f72e0a1368aab72529c456b1de81c55545f5ea30c712b8476303cdc/django-image-cropping-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "84cb6dd6404b89ee503940e20ed40a72", "sha256": "53d904a19f615c43569c3d5c8587a7045294e3e47cd23470f04a6078b906d1df" }, "downloads": -1, "filename": "django-image-cropping-0.3.3.tar.gz", "has_sig": false, "md5_digest": "84cb6dd6404b89ee503940e20ed40a72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19887, "upload_time": "2011-12-09T11:13:34", "url": "https://files.pythonhosted.org/packages/36/3e/9ada07272790b6dbd04ecf4085dc4a0bad85803ee9a2d12221d219acb4bc/django-image-cropping-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "24ab7fe3e8c8d1288e41e4692299cd4e", "sha256": "7029a0ac3f9fdbb622d79d32456bd4a441c2a03eea0cfc256b6108182267f971" }, "downloads": -1, "filename": "django-image-cropping-0.3.4.tar.gz", "has_sig": false, "md5_digest": "24ab7fe3e8c8d1288e41e4692299cd4e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19957, "upload_time": "2011-12-13T13:06:59", "url": "https://files.pythonhosted.org/packages/77/c7/a8a0365f8cbf0a3f31b376ec59e5f45a08dedbe5f4e42faeb7e03c982e03/django-image-cropping-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "9eafcbf6cbb6cc7f1f3e9778877b295c", "sha256": "bedb09a4d6b0afd9ae64c350f547dd9262f874b6990b4c465ab987c2c77447b1" }, "downloads": -1, "filename": "django-image-cropping-0.3.5.tar.gz", "has_sig": false, "md5_digest": "9eafcbf6cbb6cc7f1f3e9778877b295c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20198, "upload_time": "2011-12-19T12:00:37", "url": "https://files.pythonhosted.org/packages/98/40/3cc54b4ac9de9b5dfafbb8e6241d5b9ad315d698e97bf8d09eae638a94f2/django-image-cropping-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "9a6f37cb4423e21eb6fa74d57e348afa", "sha256": "e0aaeac944a886aa268187fa1a83c691ef28009fab2b8847619d2559190638f7" }, "downloads": -1, "filename": "django-image-cropping-0.3.6.tar.gz", "has_sig": false, "md5_digest": "9a6f37cb4423e21eb6fa74d57e348afa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20217, "upload_time": "2011-12-21T11:12:48", "url": "https://files.pythonhosted.org/packages/14/6d/e477adff20b76de424087e702a59843a2a9a63b2c29ca868338fb2ea197a/django-image-cropping-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "6796c9a177844f6772f01b6be7f9314c", "sha256": "ceb47d42ddcbe20fd6b0043f4c6142ac912ed5f05b19760a2a92dccdad3b7b20" }, "downloads": -1, "filename": "django-image-cropping-0.3.7.tar.gz", "has_sig": false, "md5_digest": "6796c9a177844f6772f01b6be7f9314c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20302, "upload_time": "2012-02-02T14:53:04", "url": "https://files.pythonhosted.org/packages/75/0a/e96563e2113c17301c3bc45cf5f9dfc0801aaf584bbdf1e4eea2cefdaefb/django-image-cropping-0.3.7.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "431ba8a41b08b7e6534edc968a400c3b", "sha256": "c277d4e68b93566e9b90b54e53cc9c647caeaca8c81a087451d4d893b31125c3" }, "downloads": -1, "filename": "django-image-cropping-0.4.0.tar.gz", "has_sig": false, "md5_digest": "431ba8a41b08b7e6534edc968a400c3b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34201, "upload_time": "2012-02-06T12:29:28", "url": "https://files.pythonhosted.org/packages/01/ca/7e0fdcae0797d24fcf4480a7f1463b5b098180996b39aff7a968144b2b49/django-image-cropping-0.4.0.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "e6c26931336da3bedbd0fcba05d73585", "sha256": "7038a500fe96427344ea35c974b74b1cfc519f4a715bd5ff21cff27464968bee" }, "downloads": -1, "filename": "django-image-cropping-0.4.1.tar.gz", "has_sig": false, "md5_digest": "e6c26931336da3bedbd0fcba05d73585", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34216, "upload_time": "2012-02-07T14:56:32", "url": "https://files.pythonhosted.org/packages/6e/39/7e3b771c4aee2bcc93b8bba5cd618fe1df005a4b4038bce29631ae1391e3/django-image-cropping-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "d13fba0855c8472769d5647900b38134", "sha256": "33bd81f33d64c820aa0ce4a7c0d930d9278bb73f8445d84f54607a16775a90ae" }, "downloads": -1, "filename": "django-image-cropping-0.4.2.tar.gz", "has_sig": false, "md5_digest": "d13fba0855c8472769d5647900b38134", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34102, "upload_time": "2012-02-07T15:01:50", "url": "https://files.pythonhosted.org/packages/46/77/6f4ba174a371d6e6935880dea32ed7dbd4a5fe58b6def44ff2d88c9efadf/django-image-cropping-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "f0e34dbf580cbd5a4211dec65144e5cd", "sha256": "3b8a2a4703f21b9d7ad3bb7ca2e729bdf561708135eef71daf72e2772a3df9f0" }, "downloads": -1, "filename": "django-image-cropping-0.4.3.tar.gz", "has_sig": false, "md5_digest": "f0e34dbf580cbd5a4211dec65144e5cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34196, "upload_time": "2012-03-02T12:06:42", "url": "https://files.pythonhosted.org/packages/50/4d/ea723251e6a5d3e9ff47cef829a0e7b95ddc5d95f97b70c71e23b5a32818/django-image-cropping-0.4.3.tar.gz" } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "350c4bc863ae305de5c5fa78649a02c8", "sha256": "9d03b0d314c386f19294ab64866f9726dfa43ff7ab6cb2bfa1cbae0c2a1f8343" }, "downloads": -1, "filename": "django-image-cropping-0.4.4.tar.gz", "has_sig": false, "md5_digest": "350c4bc863ae305de5c5fa78649a02c8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34710, "upload_time": "2012-04-02T11:27:44", "url": "https://files.pythonhosted.org/packages/e2/d9/4ec1915502afe9f0ee388d17807697b98776f624fdd2ded9b2d4aaa13aae/django-image-cropping-0.4.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "41deb3169d11c8dc7376daff7d95bc64", "sha256": "dc05740a0867048e6427f8772b7897b87d8a73b631f3884113af281efe5b5ca0" }, "downloads": -1, "filename": "django-image-cropping-0.5.tar.gz", "has_sig": false, "md5_digest": "41deb3169d11c8dc7376daff7d95bc64", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35308, "upload_time": "2012-05-15T12:59:39", "url": "https://files.pythonhosted.org/packages/10/20/7160a2f2520d4c6646640ba7b0fa65975caf060a124ff01d6b7660e4562c/django-image-cropping-0.5.tar.gz" } ], "0.6": [ { "comment_text": "", "digests": { "md5": "0443ac17b2cf2b122fd27dc95bdc6f2e", "sha256": "357721beeb9e96c12c142fb352de6a09e2d00828b50b8b0bd9dfe12aad54da73" }, "downloads": -1, "filename": "django-image-cropping-0.6.tar.gz", "has_sig": false, "md5_digest": "0443ac17b2cf2b122fd27dc95bdc6f2e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37967, "upload_time": "2012-08-31T14:28:32", "url": "https://files.pythonhosted.org/packages/0b/d4/fd045288c07304395de40e5bc8c5deb797205e803225f619c1fc2a030d2c/django-image-cropping-0.6.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "f4946b6056a4f1d072b5406807db1630", "sha256": "3180c256d5a7b2adbfe0606c5d49d681546d6b74ea6788b0d347be6ceb412420" }, "downloads": -1, "filename": "django-image-cropping-0.6.1.tar.gz", "has_sig": false, "md5_digest": "f4946b6056a4f1d072b5406807db1630", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38036, "upload_time": "2012-09-07T13:31:30", "url": "https://files.pythonhosted.org/packages/b0/08/b74953ffc70bcf23a35641a0376179eb88a3cb486a0d42b60995f0fe3623/django-image-cropping-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "7a3b91157d8b2e9e511d36221cb6563d", "sha256": "e305e96c2f4c7193da0db11e0bbd54433d433111b7bf092980d4bc400a45947b" }, "downloads": -1, "filename": "django-image-cropping-0.6.2.tar.gz", "has_sig": false, "md5_digest": "7a3b91157d8b2e9e511d36221cb6563d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39226, "upload_time": "2012-11-02T11:09:49", "url": "https://files.pythonhosted.org/packages/8d/59/5da8b9ed69c9171fd816b4fe008b14e50f395131b5f528f4b9ac9bd6718c/django-image-cropping-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "b6806e4a2b1875703df3b9dd6819f1fe", "sha256": "54f76557a2978b9d3ae7960d4d73fd086886d9807689913ef886a4099755fe8f" }, "downloads": -1, "filename": "django-image-cropping-0.6.3.tar.gz", "has_sig": false, "md5_digest": "b6806e4a2b1875703df3b9dd6819f1fe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39188, "upload_time": "2012-11-02T11:34:22", "url": "https://files.pythonhosted.org/packages/79/c8/2a37aca90da30013ac69c6d468f35faa290172d1dd29a10526b95ff81e64/django-image-cropping-0.6.3.tar.gz" } ], "0.6.4": [ { "comment_text": "", "digests": { "md5": "84d1399e626c126e2fa51784f2a70225", "sha256": "a2e73350f163104bfc55e3de5c44031257b9a6cb7dfda0bfaade28798fef355a" }, "downloads": -1, "filename": "django-image-cropping-0.6.4.tar.gz", "has_sig": false, "md5_digest": "84d1399e626c126e2fa51784f2a70225", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39118, "upload_time": "2013-03-22T21:14:28", "url": "https://files.pythonhosted.org/packages/5e/14/f072c2973c031c218e41f57741a5b3aea8de96730d07787f9f7b2e8ec073/django-image-cropping-0.6.4.tar.gz" } ], "0.6.5": [ { "comment_text": "", "digests": { "md5": "69fb0d34e5a1a6f734b691f64bc407b9", "sha256": "bb0ddab3f305d2069f4a4bdb7e53a2c8ba24fdc3f558f29590d5d96403591253" }, "downloads": -1, "filename": "django-image-cropping-0.6.5.tar.gz", "has_sig": false, "md5_digest": "69fb0d34e5a1a6f734b691f64bc407b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39233, "upload_time": "2014-05-12T11:15:34", "url": "https://files.pythonhosted.org/packages/d5/2a/429504c44e7854ecbb2911d61b8ffa6c8b38ab5609b97284945eab05c5ce/django-image-cropping-0.6.5.tar.gz" } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "5799dc14c34569d672bd8501c29d037d", "sha256": "738ee34df1cc728ea92b9898f7539d43829771592d7295de1802cd5e66e5c2cd" }, "downloads": -1, "filename": "django-image-cropping-0.7.0.tar.gz", "has_sig": false, "md5_digest": "5799dc14c34569d672bd8501c29d037d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55879, "upload_time": "2013-10-22T16:15:08", "url": "https://files.pythonhosted.org/packages/d1/4c/340264ef1946c7e277df7818c80fc3443981e5e9743b0b92f9b47affee01/django-image-cropping-0.7.0.tar.gz" } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "9c6448f4276f1818d64744701fba7b5b", "sha256": "7b476478d1b4f86bb8224f3d33e8c621365ce5eeb0b2741904e957dcd0304127" }, "downloads": -1, "filename": "django-image-cropping-0.7.1.tar.gz", "has_sig": false, "md5_digest": "9c6448f4276f1818d64744701fba7b5b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 55834, "upload_time": "2013-10-22T21:24:12", "url": "https://files.pythonhosted.org/packages/ef/36/69266bd30e6677b046a88f5b9fbd4a53634bf233d62b89cfa6cc20420c12/django-image-cropping-0.7.1.tar.gz" } ], "0.8": [ { "comment_text": "", "digests": { "md5": "11cc63fc8da7ee902707704256fd105d", "sha256": "51ba1013e377c65fe860c207ade1b000e07c8bee8e3db2f6049103e36cec92bc" }, "downloads": -1, "filename": "django-image-cropping-0.8.tar.gz", "has_sig": false, "md5_digest": "11cc63fc8da7ee902707704256fd105d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42428, "upload_time": "2013-11-27T14:31:52", "url": "https://files.pythonhosted.org/packages/07/b9/3b467318291413c3a3a7ed05a3e57c07738c031af32a25eebd84a15f9847/django-image-cropping-0.8.tar.gz" } ], "0.8.1": [ { "comment_text": "", "digests": { "md5": "5ea4107992754ece9bedc24a16ecdc28", "sha256": "ed78596fa388f0b78ff4844201a36d6c5e7f62600e4e9874ae376dce0455d99a" }, "downloads": -1, "filename": "django-image-cropping-0.8.1.tar.gz", "has_sig": false, "md5_digest": "5ea4107992754ece9bedc24a16ecdc28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41195, "upload_time": "2014-04-15T10:11:19", "url": "https://files.pythonhosted.org/packages/72/60/19976443908bd5fb7ab3cbff4f997e970b8c985eadadf6a5213f9f1e6280/django-image-cropping-0.8.1.tar.gz" } ], "0.8.2": [ { "comment_text": "", "digests": { "md5": "0412c9784cfba12c72863ebfd9c04dba", "sha256": "235a15e12dbe1c602c6f70c911a63ac70f13c8736c015ec2c01db32eb6d074f9" }, "downloads": -1, "filename": "django-image-cropping-0.8.2.tar.gz", "has_sig": false, "md5_digest": "0412c9784cfba12c72863ebfd9c04dba", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40764, "upload_time": "2014-04-16T17:28:46", "url": "https://files.pythonhosted.org/packages/89/2c/2616680eaac760da2ebd621b69ab9e6e8b420a2a86315719a3873f9fdf04/django-image-cropping-0.8.2.tar.gz" } ], "0.8.3": [ { "comment_text": "", "digests": { "md5": "c75518e6280058ed04a38326715420a8", "sha256": "874ca74e8245d8ea63124884366e5364bc77f57bb2b205ea8870a36afb342a83" }, "downloads": -1, "filename": "django-image-cropping-0.8.3.tar.gz", "has_sig": false, "md5_digest": "c75518e6280058ed04a38326715420a8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41248, "upload_time": "2014-08-19T13:07:09", "url": "https://files.pythonhosted.org/packages/48/d5/cc5f6eb7afb84cf7faeade82c41d8026663417b62ce9f7a08f18ce7692b9/django-image-cropping-0.8.3.tar.gz" } ], "0.8.4": [ { "comment_text": "", "digests": { "md5": "c0175a2ec57236d89c1f354fe466a355", "sha256": "a41a84388e241d8d375cc6b8e1c491ac440f12a2c123d0b1b104d35f2738cffe" }, "downloads": -1, "filename": "django-image-cropping-0.8.4.tar.gz", "has_sig": false, "md5_digest": "c0175a2ec57236d89c1f354fe466a355", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41257, "upload_time": "2014-10-03T10:27:26", "url": "https://files.pythonhosted.org/packages/66/46/02bd8e99b3c787cf67a022e2fb24e558e2743d0c081ccc581cf1750b7b20/django-image-cropping-0.8.4.tar.gz" } ], "0.9": [ { "comment_text": "", "digests": { "md5": "451fdf9083dd7d1040b1fc1c2e2ebe52", "sha256": "11ac7c0312be34a4a0c9ea37f9065e05f36cf0a6a818ec8e07f65326b56398a1" }, "downloads": -1, "filename": "django-image-cropping-0.9.tar.gz", "has_sig": false, "md5_digest": "451fdf9083dd7d1040b1fc1c2e2ebe52", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 41582, "upload_time": "2014-10-07T17:52:01", "url": "https://files.pythonhosted.org/packages/86/ec/9c47ddd9561d33687277c33d78f0b940e69fc5d9aec107790c1d6e184006/django-image-cropping-0.9.tar.gz" } ], "0.9.1": [ { "comment_text": "", "digests": { "md5": "80fd263a78d807e1e4d0da1a2c4dc3db", "sha256": "c99e9274e3bf20587b66fb5535c29cf01bfa8ba32c444b51b7e85b631f7bf22e" }, "downloads": -1, "filename": "django-image-cropping-0.9.1.tar.gz", "has_sig": false, "md5_digest": "80fd263a78d807e1e4d0da1a2c4dc3db", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43443, "upload_time": "2014-12-09T11:48:35", "url": "https://files.pythonhosted.org/packages/0a/7c/9c0c53085dddfec5228e5e0048e26df0b1657da52a1565192977fb8da751/django-image-cropping-0.9.1.tar.gz" } ], "0.9.2": [ { "comment_text": "", "digests": { "md5": "0cc5b6aeae35d7e159fb84796a0eb797", "sha256": "57a6e3148daf6e63166534eb533725e2e562c547587888cb3cba5a7de5ea6042" }, "downloads": -1, "filename": "django-image-cropping-0.9.2.tar.gz", "has_sig": false, "md5_digest": "0cc5b6aeae35d7e159fb84796a0eb797", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43436, "upload_time": "2015-02-16T18:16:35", "url": "https://files.pythonhosted.org/packages/5f/6e/d893f2e7ae07b7326eab8c38ea8dea126b1c1cf541105fab0d95bdd23204/django-image-cropping-0.9.2.tar.gz" } ], "0.9.3": [ { "comment_text": "", "digests": { "md5": "76ba721ea93f39b453b20cdea841f8b8", "sha256": "f05536b5fdeb98c50a43a909e8eec67c7022dd60bd73732025a06c2eae03dee0" }, "downloads": -1, "filename": "django-image-cropping-0.9.3.tar.gz", "has_sig": false, "md5_digest": "76ba721ea93f39b453b20cdea841f8b8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43649, "upload_time": "2015-02-24T15:13:49", "url": "https://files.pythonhosted.org/packages/4b/d7/1953fb843d1aea8902e3e9bbef2a9d93c81e9e1284b0b88b20bf1d8f49bf/django-image-cropping-0.9.3.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "14f8136ae631683ecfeedc84d3c4f8b4", "sha256": "0ec7b2cdaf8cd5e7a148a662a09e93d80068790c85608e4bea80061cce1ad8e8" }, "downloads": -1, "filename": "django-image-cropping-1.0.0.tar.gz", "has_sig": false, "md5_digest": "14f8136ae631683ecfeedc84d3c4f8b4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43890, "upload_time": "2015-03-04T17:58:44", "url": "https://files.pythonhosted.org/packages/1c/ba/d8ba91a1a53cc6173f744bb638224835442eaf097ee029f75ee7d0454289/django-image-cropping-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "d069b16b453bebf44511487ad52e7e99", "sha256": "bdb4cf018c0cc67967519e45975d18be804462f5dec9793a48f9133e68341788" }, "downloads": -1, "filename": "django-image-cropping-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d069b16b453bebf44511487ad52e7e99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43885, "upload_time": "2015-03-30T14:41:43", "url": "https://files.pythonhosted.org/packages/b0/b1/bf5c75735bfe693c8b1d46c0086e061c8f065c62de05ce86ceeb8f84f89b/django-image-cropping-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "451985c19533fa64cfd94c7947aea1b9", "sha256": "e7e165cf60838383c872c03234b8477ce95d92358e5065895b956c2de1e05d68" }, "downloads": -1, "filename": "django-image-cropping-1.0.2.tar.gz", "has_sig": false, "md5_digest": "451985c19533fa64cfd94c7947aea1b9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44293, "upload_time": "2015-09-09T19:54:41", "url": "https://files.pythonhosted.org/packages/d6/24/22606a8023f93f7989300acb66a076e59186473cb66b5d3c277a4a4f59d1/django-image-cropping-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "9ec7ad22d804ec29146574f3d499a93b", "sha256": "c4146659f026b9baf207f8430e473f92e4786fc25fe8089a3911474d821aa115" }, "downloads": -1, "filename": "django-image-cropping-1.0.3.tar.gz", "has_sig": false, "md5_digest": "9ec7ad22d804ec29146574f3d499a93b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 44357, "upload_time": "2015-12-16T08:31:36", "url": "https://files.pythonhosted.org/packages/0c/cb/bfaf5e56f7f2749bd9fa584186f88055733213dbab33ec23311a823d2d17/django-image-cropping-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "5f5b60bcfd411b6e7640df708992baaf", "sha256": "8767aa10a587cf3d91f064f7368d1806ec0c1f6dcf34a28e615539c8311f4163" }, "downloads": -1, "filename": "django-image-cropping-1.0.4.tar.gz", "has_sig": false, "md5_digest": "5f5b60bcfd411b6e7640df708992baaf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38825, "upload_time": "2016-11-10T09:47:27", "url": "https://files.pythonhosted.org/packages/f2/89/403236187883581b72908989ae6e1b90d28531f6f7c82484dec473cfe855/django-image-cropping-1.0.4.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "300d3b10c51b1889bb8cad0748040108", "sha256": "46a7930b1018d927aadc10d77998221b6048ee38d71b62a4eca8c58c54d35121" }, "downloads": -1, "filename": "django-image-cropping-1.1.0.tar.gz", "has_sig": false, "md5_digest": "300d3b10c51b1889bb8cad0748040108", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 42990, "upload_time": "2017-08-31T15:00:37", "url": "https://files.pythonhosted.org/packages/51/75/28dd001f0cb90e9e21d9642c946055d4c0217b0f6d1de8179083fff4259f/django-image-cropping-1.1.0.tar.gz" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "b8f7b0ed9f7bf7ef0a11390051f7afb6", "sha256": "157c6f96b2bbe485bde00108cbf379ea0fcb6d7a7252648f7548aa795108dde0" }, "downloads": -1, "filename": "django-image-cropping-1.2.0.tar.gz", "has_sig": false, "md5_digest": "b8f7b0ed9f7bf7ef0a11390051f7afb6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43122, "upload_time": "2018-08-21T08:08:12", "url": "https://files.pythonhosted.org/packages/20/88/4bdd2f4f8e3463127a6014f70ba9cb975adad7556c369170ef2bc30a9372/django-image-cropping-1.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "b8f7b0ed9f7bf7ef0a11390051f7afb6", "sha256": "157c6f96b2bbe485bde00108cbf379ea0fcb6d7a7252648f7548aa795108dde0" }, "downloads": -1, "filename": "django-image-cropping-1.2.0.tar.gz", "has_sig": false, "md5_digest": "b8f7b0ed9f7bf7ef0a11390051f7afb6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43122, "upload_time": "2018-08-21T08:08:12", "url": "https://files.pythonhosted.org/packages/20/88/4bdd2f4f8e3463127a6014f70ba9cb975adad7556c369170ef2bc30a9372/django-image-cropping-1.2.0.tar.gz" } ] }