mirror of
https://github.com/openseadragon/openseadragon.git
synced 2024-11-25 06:36:11 +03:00
Merge branch 'master' into collections
fixed Conflicts: src/viewport.js
This commit is contained in:
commit
63996a7d92
@ -47,6 +47,7 @@ OPENSEADRAGON CHANGELOG
|
||||
* You can now rotate the navigator along with the main viewer (#455)
|
||||
* Viewport.setRotation now allows all rotation angles (#466)
|
||||
* Pinch rotate is now available (defaults to off) (#468)
|
||||
* Added option for home button to fill viewer (#474)
|
||||
|
||||
1.1.1:
|
||||
|
||||
|
@ -54,6 +54,7 @@ $.IIIFTileSource = function( options ){
|
||||
|
||||
options.tileSizePerScaleFactor = {};
|
||||
|
||||
// N.B. 2.0 renamed scale_factors to scaleFactors
|
||||
if ( this.tile_width ) {
|
||||
options.tileSize = this.tile_width;
|
||||
} else if ( this.tile_height ) {
|
||||
@ -62,13 +63,13 @@ $.IIIFTileSource = function( options ){
|
||||
// Version 2.0 forwards
|
||||
if ( this.tiles.length == 1 ) {
|
||||
options.tileSize = this.tiles[0].width;
|
||||
this.scale_factors = this.tiles[0].scale_factors;
|
||||
this.scale_factors = this.tiles[0].scaleFactors;
|
||||
} else {
|
||||
// Multiple tile sizes at different levels
|
||||
this.scale_factors = [];
|
||||
for (var t = 0; t < this.tiles.length; t++ ) {
|
||||
for (var sf = 0; sf < this.tiles[t].scale_factors.length; sf++) {
|
||||
var scaleFactor = this.tiles[t].scale_factors[sf];
|
||||
for (var sf = 0; sf < this.tiles[t].scaleFactors.length; sf++) {
|
||||
var scaleFactor = this.tiles[t].scaleFactors[sf];
|
||||
this.scale_factors.push(scaleFactor);
|
||||
options.tileSizePerScaleFactor[scaleFactor] = this.tiles[t].width;
|
||||
}
|
||||
|
@ -218,6 +218,10 @@
|
||||
*
|
||||
* @property {Number} [maxZoomLevel=null]
|
||||
*
|
||||
* @property {Boolean} [homeFillsViewer=false]
|
||||
* Make the 'home' button fill the viewer and clip the image, instead
|
||||
* of fitting the image to the viewer and letterboxing.
|
||||
*
|
||||
* @property {Boolean} [panHorizontal=true]
|
||||
* Allow horizontal pan.
|
||||
*
|
||||
@ -909,6 +913,7 @@ window.OpenSeadragon = window.OpenSeadragon || function( options ){
|
||||
defaultZoomLevel: 0,
|
||||
minZoomLevel: null,
|
||||
maxZoomLevel: null,
|
||||
homeFillsViewer: false,
|
||||
|
||||
//UI RESPONSIVENESS AND FEEL
|
||||
clickTimeThreshold: 300,
|
||||
|
@ -1849,7 +1849,8 @@ function openTileSource( viewer, source, options ) {
|
||||
degrees: _this.degrees //,
|
||||
//TODO: figure out how to support these in a way that makes sense
|
||||
//minZoomLevel: this.minZoomLevel,
|
||||
//maxZoomLevel: this.maxZoomLevel
|
||||
//maxZoomLevel: this.maxZoomLevel,
|
||||
//homeFillsViewer: this.homeFillsViewer
|
||||
});
|
||||
} else {
|
||||
if( source ){
|
||||
@ -1869,7 +1870,8 @@ function openTileSource( viewer, source, options ) {
|
||||
maxZoomLevel: _this.maxZoomLevel,
|
||||
viewer: _this,
|
||||
degrees: _this.degrees,
|
||||
navigatorRotate: _this.navigatorRotate
|
||||
navigatorRotate: _this.navigatorRotate,
|
||||
homeFillsViewer: _this.homeFillsViewer
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -84,7 +84,8 @@ $.Viewport = function( options ) {
|
||||
defaultZoomLevel: $.DEFAULT_SETTINGS.defaultZoomLevel,
|
||||
minZoomLevel: $.DEFAULT_SETTINGS.minZoomLevel,
|
||||
maxZoomLevel: $.DEFAULT_SETTINGS.maxZoomLevel,
|
||||
degrees: $.DEFAULT_SETTINGS.degrees
|
||||
degrees: $.DEFAULT_SETTINGS.degrees,
|
||||
homeFillsViewer: $.DEFAULT_SETTINGS.homeFillsViewer
|
||||
|
||||
}, options );
|
||||
|
||||
@ -186,15 +187,22 @@ $.Viewport.prototype = /** @lends OpenSeadragon.Viewport.prototype */{
|
||||
* @function
|
||||
*/
|
||||
getHomeZoom: function() {
|
||||
var aspectFactor =
|
||||
this.contentAspectX / this.getAspectRatio();
|
||||
|
||||
if( this.defaultZoomLevel ){
|
||||
return this.defaultZoomLevel;
|
||||
} else {
|
||||
var output = ( aspectFactor >= 1 ) ?
|
||||
1 :
|
||||
aspectFactor;
|
||||
var aspectFactor =
|
||||
this.contentAspectX / this.getAspectRatio();
|
||||
|
||||
var output;
|
||||
if( this.homeFillsViewer ){ // fill the viewer and clip the image
|
||||
output = ( aspectFactor >= 1) ?
|
||||
aspectFactor :
|
||||
1;
|
||||
} else {
|
||||
output = ( aspectFactor >= 1 ) ?
|
||||
1 :
|
||||
aspectFactor;
|
||||
}
|
||||
|
||||
return output / this.homeBounds.width;
|
||||
}
|
||||
|
@ -4,7 +4,7 @@
|
||||
"protocol": "http://iiif.io/api/image",
|
||||
"height": 1024,
|
||||
"width": 775,
|
||||
"tiles" : [{"width":256, "scale_factors":[1,2,4,8]}],
|
||||
"tiles" : [{"width":256, "scaleFactors":[1,2,4,8]}],
|
||||
|
||||
"profile": ["http://iiif.io/api/image/2/level1.json",
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user