Skip to main content

About

Django Loupe provides an easy way to display zoomable, large images. The images may be hosted locally by uploading the original large image, or externally. Externally hosted images are referenced by their URL.

Zoomable images are displayed by making a tiled image pyramid. There are several methods and formats for making this pyramids. Django Loupe creates locally-hosted tiles in the Deep Zoom format developed by Microsoft using the open source VIPS library.

The OpenSeadragon JavaScript library displays the locally- or externally-hosted images.

Install

  1. Install Django Loupe using pip:

    pip install django-loupe
  2. Add "loupe", to your Django project’s INSTALLED_APPS.

  3. Install VIPS on your platform. There are packages for Windows, and most Linux distributions include a package. There is a homebrew recipe for Mac OS X.

Upload an image

  1. Add a new loupe image

  2. Enter in a title and description

  3. Click on the upload file button and select a high-res file

  4. Save.

Enter an externally hosted image

  1. Add a new loupe image

  2. Enter a title and description

  3. Enter in the URL for the tiles. This is not the URL for the page where you view the image. You will have to look at the page source to discover the tileset URL. Different formats have standard description files and Django Loupe will determine the correct URL from these.

    • Deep Zoom: http://example.com/path/to/image/imagename.dzi

    • International Image Interoperability Framework: http://example.com/path/to/image/info.xml

    • Zoomify: http://example.com/path/to/image/ImageProperties.xml

  4. Select the type of External tileset type from the selection.

  5. Save.

Serving an image

  1. In the template include the JavaScript:

    {% load loupe_tags %}{% openseadragon_js %}
  2. {{ object.render }} will include the HTML fragment for the large image.

    • If it is an external tile set, it looks for <modulename>/<classname>_<tileset_type>.html where <tileset_type> is the short name of the tileset type choice.

    • Finally, it looks in <modulename>/<classname>_default.html

Using remote storage

  1. Use django-queued-storage

  2. Set 'IMAGE_STORAGE' to appropriate storage type.

  3. Specify setting 'QUEUED_STORAGE_TASK' to either 'loupe.task.TileAndTransfer' or 'loupe.task.TileTransferAndDelete'.

Metadata

Release files for django-image-loupe 0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for django-image-loupe 0.5
File Size Uploaded
django-image-loupe-0.5.tar.gz 728.6 kB Details

Release files / django-image-loupe-0.5.tar.gz

Download URL django-image-loupe-0.5.tar.gz
Size 728.6 kB
Tags Source
SHA-256 checksum
How to use checksums
af5821768da234cb71b0cd70b84add764cf9b12b74308377fba8ad60989a100a
BLAKE2b-256 checksum
How to use checksums
a700e72382733d7e74746d1a7957e334e1501029b6c14ff84da8c7c95cb251ee
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.5 This release

1 release file

0.4

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page