mejackreed / Leaflet Iiif
Licence: mit
Leaflet plugin for viewing IIIF images
Stars: ✭ 116
Programming Languages
javascript
184084 projects - #8 most used programming language
Labels
Projects that are alternatives of or similar to Leaflet Iiif
Leaflet.path.drag
Drag functionality for Leaflet vector layers
Stars: ✭ 72 (-37.93%)
Mutual labels: leaflet
Flutter map marker cluster
Provides beautiful animated marker clustering functionality for flutter_map. Inspired by Leaflet.markercluster
Stars: ✭ 101 (-12.93%)
Mutual labels: leaflet
Pinpoint
JavaScript library for creating beautifully simple maps in seconds
Stars: ✭ 83 (-28.45%)
Mutual labels: leaflet
Webclient Javascript
MapGIS Client for JavaScript, is a cloud GIS network client development platform. It makes a perfect fusion of traditional WebGIS and cloud GIS; also integrates four mainstream map open source frameworks and visualization libraries such as Echarts, MapV, and D3, etc.. Therefore, highly-efficient visual expression and analysis of big data and real-time streaming data have been further enhanced.
Stars: ✭ 88 (-24.14%)
Mutual labels: leaflet
Leaflet Providers
An extension to Leaflet that contains configurations for various free tile providers.
Stars: ✭ 1,603 (+1281.9%)
Mutual labels: leaflet
Leaflet.layergroup.collision
Leaflet plugin for uncluttering L.Markers using basic collision detection.
Stars: ✭ 82 (-29.31%)
Mutual labels: leaflet
Leaflet.browser.print
A leaflet plugin which allows users to print the map directly from the browser
Stars: ✭ 94 (-18.97%)
Mutual labels: leaflet
Leaflet.featuregroup.subgroup
Creates a Feature Group that adds its child layers into a parent group when added to a map (e.g. through L.Control.Layers)
Stars: ✭ 79 (-31.9%)
Mutual labels: leaflet
Leaflet Gps
Simple leaflet control plugin for tracking gps position
Stars: ✭ 90 (-22.41%)
Mutual labels: leaflet
Leaflet.motion
A simple tool to animate polylines and polygons in different way
Stars: ✭ 76 (-34.48%)
Mutual labels: leaflet
Leaflet.deflate
Deflates lines and polygons to a marker when their screen size becomes too small in lower zoom levels.
Stars: ✭ 111 (-4.31%)
Mutual labels: leaflet
Leaflet.labeltextcollision
Leaflet.LabelTextCollision is a LeafletJS plug-in to display labels on vector data while avoiding label collisions.
Stars: ✭ 65 (-43.97%)
Mutual labels: leaflet
Leaflet Elevation
Leaflet plugin that allows to add elevation profiles using d3js
Stars: ✭ 88 (-24.14%)
Mutual labels: leaflet
Leaflet.geodesic
Add-on to draw geodesic lines with leaflet
Stars: ✭ 113 (-2.59%)
Mutual labels: leaflet
Readsb
Readsb is a Mode-S/ADSB/TIS decoder for RTLSDR, BladeRF, Modes-Beast and GNS5894 devices.
Stars: ✭ 91 (-21.55%)
Mutual labels: leaflet
Leaflet-IIIF
A Leaflet plugin for viewing IIIF images. See the demo
Requires Leaflet.js.
Leaflet-IIIF relies on browser support for Promise and Fetch API. If you need to support IE or other browsers without this, please use a polyfill.
Note on Leaflet Compatibility
Leaflet Versions | Leaflet-IIIF Versions |
---|---|
< 1.0.0 | < 1.0.0 |
>= 1.0 | >= 1.0 |
Examples
Install with NPM
$ npm install leaflet-iiif --save
Quick and easy to get going.
var map = L.map('map', {
center: [0, 0],
crs: L.CRS.Simple,
zoom: 0
});
L.tileLayer.iiif('http://example.com/iiifimage.jp2/info.json').addTo(map);
Thanks to klokantech/iiifviewer and turban/Leaflet.Zoomify who have similar plugins which were used in development of Leaflet-IIIF.
Options
Leaflet-IIIF extends L.TileLayer and so many options available to L.TileLayer can be used with Leaflet-IIIF.
Option | Type | Default | Description |
---|---|---|---|
tileFormat |
String |
'jpg' |
The format of the returned image. |
tileSize |
Number | 256 | Tile size (width and height in pixels, assuming tiles are square). |
fitBounds |
Boolean | true | Automatically center and fit the maps bounds to the added IIIF layer |
setMaxBounds |
Boolean | false | Constrain the map viewer to the image |
quality |
String | 'default' | determines whether the image is delivered in color, grayscale or black and white Note: All IIIF servers do not support this parameter. |
Development
Clone the repository
$ git clone https://github.com/mejackreed/Leaflet-IIIF.git
Install the dependencies
$ npm install
Run the server
$ npm start
Run the test suite
$ npm test
Access the examples at http://127.0.0.1:8080/examples/example.html
Leaflet-IIIF Examples
- Leaflet-IIIF Basic Example
- Leaflet-IIIF Side by Side using IIIF Quality
- Leaflet-IIIF Martellus Map example using IconLayers plugin
- Leaflet-IIIF Magnifying Glass Example
- Leaflet-IIIF Draw example
- Leaflet-IIIF Labels example
- Leaflet-IIIF Annotation Example
- Leaflet-IIIF Cropper example
Leaflet-IIIF in the wild
- Europeana uses Leaflet-IIIF for viewing image content. See more about how they do this "Building a rich media experience with the Europeana API and IIIF" and an example at http://www.europeana.eu/portal/en/record/9200211/en_list_one_vad_0342.html
- Princeton Libraries used Leaflet-IIIF for its ["Plan of Versailles"](Plan of Versailles) map. This implementation uses GeoJSON annotation to annotate the map being served out by a IIIF server. http://rbsc.princeton.edu/versailles/map
- GeoBlacklight uses Leaflet-IIIF as the IIIF viewing client for viewing images.
- Fulcrum.org uses Leaflet-IIIF for viewing image resources. See it in action https://www.fulcrum.org/concern/file_sets/s7526c42w
-
IIIF Curation Viewer - uses Leaflet-IIIF to provide curated cropped viewing experience of IIIF images
- Digital Typhoon: Himawari-8 Clipping uses Leaflet-IIIF allowing users to clip sections from a large resolution satellite image.
- IIIF Curation Viewer with Hentaigana Image Recognition Combines IIIF Curation Viewer with TensorFlow for character recognition. Demo
- Matthew Paros' Map of Britain is a short story-map that explores some of Matthew Paris' errors and to begin to understand the geographical conception he had of Britain in the 13th Century. The map also includes modern English translations of the medieval place-names.
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].