Django Transparent Image Neat Transformer (Based on mirumee/django-images)
Python
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
tests
tint
.gitignore
.travis.yml
README.rst
setup.py

README.rst

Django Transparent Image Neat Transformer

http://kaleidos.net/static/img/badge.png https://travis-ci.org/jespino/django-tint.png?branch=master https://coveralls.io/repos/jespino/django-tint/badge.png?branch=master https://pypip.in/v/django-tint/badge.png https://pypip.in/d/django-tint/badge.png

Usage

You must define your transformation in your TINT_TRANSFORMATIONS settings variable.

You set your images on your models puting a ForeignKey to tint.models.Image.

Then you put your images in your templates using the at_transformation filter. Example:

{% load tint %}

<img src="{{ mymodel.my_image_field|at_transformation:"my-transformation-definition" }}" />

If you use django-jinja you only have to use the image_at_transformation function. Example:

<img src="{{ image_at_transformation(mymodel.my_image_field, "my-transformation-definition") }}" />

Default ImageProc Actions

Django-tint default Image Processor comes with some actions, here you have the list:

Action Description Params
crop Crop an image to a width and height. height, width, align, valign
scale Scale an image to a width and height (deforming it). height, width
fit Scale an image to a width and height and crop the overflow. height, width, align, valign
watermark Paste a watermark on a image. watermark_image, opacity
grayscale Convert the image to grayscale.  
flip Flip the image vertically.  
mirror Flip the image horizontally.  
equalize Equalize the image histogram.  
autocontrast Maximize (normalize) image contrast. cutoff
invert Invert the image colors.  
convert Convert image mode (L, RGB or CYMK). mode

Configuration

In Django-tint you can define your ImageProc class (normally will be a subclass of the DefaultImageProc) to add your own image transformations. You can use it configuring the TINT_IMAGE_PROCESSOR settings variable. Example:

TINT_IMAGE_PROCESSOR = 'myapp.my_image_processor_module.MyImageProcessorClass'

If the variable is not defined the DefaultImageProc is used.

Then you can configure your transformations as a dictionary. The name of the transformation is the key, and the value is a list of "actions". An action is a dictionary with one key 'action' with the name of the action, and the other keys the parameters to use in this action. Example:

TINT_TRANSFORMATIONS = {
  'example1': [
      {
          "action": 'fit',
          "width": 1024,
          "height": 768,
          "align": 'center',
          "valign": 'middle',
      },
      {
          "action": 'watermark',
          "image": 'example.watermark.png',
          "opacity": 0.5,
      },
  ],
  'example2': [
      {
          "action": 'fit',
          "width": 800,
          "height": 600,
          "align": 'center',
          "valign": 'middle',
      },
      {
          "action": 'watermark',
          "image": 'example.watermark.png',
          "opacity": 0.5,
      },
  ]
}

You can define the the removing of deleted images or thumnails model instances, remove the image file with the settings TINT_KEEP_THUMBNAILS and TINT_KEEP_IMAGES, the default value is True to both settings.

You can define your file output format and your file output extension with the settings TINT_IMAGE_OUTPUT_FORMAT and TINT_IMAGE_OUTPUT_EXTENSION. The default value is None this means use the same format and extension of the origin file. Example:

TINT_IMAGE_OUTPUT_FORMAT = "png"
TINT_IMAGE_OUTPUT_EXTENSION = ".png"