Git Product home page Git Product logo

iipmooviewer's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

iipmooviewer's Issues

I cannot control navWinSize

Hello:

My problem is around the size of navigation window. With some images, the navigation window is too big. I am trying control them with the navWinSize parameter, but seems not run. If I set navWinSize to 0.2, 0.1, 0.9 or 20 nothing changes.

I attached a screenshot:
captura de pantalla 2016-10-08 a las 16 24 04

Where is my problem?

Thanks a lot!

Position of annotation text tooltip

The text tooltip is always on top-left corner of the annotation zone, thus it remains hidden when we move to a higher zoom level (should be attached to the mouse pointer ?).

Strange rotate behaviour

Hi Ruven,

I'm experiencing strange behaviour with the rotate feature especially when the image to display doesn't fit the entire viewport.

start

No rotation, zone in the navigation window fits the entire window: ok
small_normal

rotate right

Part of the picture is missing at the top, zone in the navigation window is not centered.
small_rotated

zone moved

In addition to the rotate right operation, I drag the zone in the navigation window to the right side: image in the viewport has not moved accordingly but part of the image has disappeard.
small_rotated_moved_zone

Is it a known bug or just something wrecked on my local installation?

viewer stops working between 71deb8aa04595875177eaa560530f920c4264e1c and 19f84ff3710cb9c3fe25ce0793c47855342067bf

I had the IIPImage server working fine with IIPMooViewer v. 1.1. I then tried the latest IIPMooViewer 2.0 from github, and got a crazy jumble of images. I went back throught the commits and found that the last version of 2.0 to work was 71deb8a (committed on Jan 19 2013). When I tried the next commit, 19f84ff (committed Jan 20 2013), all I got was a blank browser page.

I'm on Ubuntu 12.04 using Firefox 24.0. I used the default index.html and only changed the image pathname value. I'm using the sample PalaisDuLouvre.tif image file. Firebug doesn't show any errors and shows all linked files (i.e. js, css) loaded.

Is there some new minimum browser requirement I'm not fulfilling? Do you have any idea why the viewer would have stopped working between these commits?

I've uploaded a screenshot of what the latest viewer displays. latestcommitscreenshot

Thanks,
Steve H

Fullscreen

toggleFullScreen only enables fullscreen, it doesn't exit out of fullscreen (tested on Firefox 23 and Chrome 30-dev).

Also, I think exiting fullscreen when ESC is pressed (see following code) isn't necessary -- all browsers will do that automatically.

iipmooviewer-2.0.js, lines 514-515.

    case 27: // esc
      if( this.fullscreen && this.fullscreen.isFullscreen ) if(!IIPMooViewer.sync) this.toggleFullScreen();

Smooth zooming of Canvas?

Would it be possible to get a smooth Tweening of the image canvas when zooming? I see you're setting a default morph element on the div but I'm unable to prod it in a way that makes it work. I fear I do not have the necessary Mootools knowledge.

Facebook breaks URL returned from getRegionURL()

invalid level

If I create a url using ctrl-c to get a # and paste it into a browser windows everything works fine, if I then move the image and generate a new url using ctrl-c without changing resolution, hit home and paste the url into the same window and hit enter, again everything is fine the image moves as expected, however if I change resoloutions I get an an invalid level error and the image can not be moved. What am I doing wrong?

click to zoom in/out not working

Hi

We are testing the viewer for our JP2 images and for some reason the navigation window buttons (home, zoom in/out) don't work. The click is not being detected.

A working version of the viewer (with the problem) can be seen here:

http://mauriciogiraldo.com/iip/

Any ideas on why this is happening?

Thanks

Get Coordinates

Hi,
I'm trying to transform mouse click event to image coordinates without any success.
Is it possible to implement a new function which gets control coordinates and returns image coordinates?

Thanks,
Ido

undefined Protocols and IIPMooViewer errors

On git clone of 5277b4, using the example index.html, get JS errors on Safari, Firefox and Chrome (all latest versions on OSX 10.7.4).

TypeError: 'undefined' is not an object (evaluating 'Protocols') iipmooviewer-2.0-compressed.js:2
TypeError: 'undefined' is not a constructor (evaluating 'new IIPMooViewer( "viewer", { index.html:47
image: image,
credit: credit
})')

Changing to uncompressed JS to more easily identity the location, we get

ReferenceError: Can't find variable: Protocols iip.js:4

which is src/protocols/iip.js:4
Protocols.IIP = new Class({

and

ReferenceError: Can't find variable: IIP iipmooviewer-2.0.js:135

this.protocol = new IIP();

It is perhaps related to the order of loading protocols/iip.js vs iipmooviewer-2.0.js .. investigations continuing...

Yes, changing the order of the Closure compiler command so that iip.js is before iipmooviewer-2.0.js resolves the problem (and leads to another ... separate ticket).

protocols/iip.js getMetaDataURL not updated

Looks like protocols/iip.js needs updating to match the recent change in getMetaDataURL

diff --git a/src/protocols/iip.js b/src/protocols/iip.js
index ce2e8c5..31b0c5d 100644
--- a/src/protocols/iip.js
+++ b/src/protocols/iip.js
@@ -5,8 +5,8 @@ Protocols.IIP = new Class({

/* Return metadata URL
*/

  • getMetaDataURL: function(image){
  • return "FIF=" + image + "&obj=IIP,1.0&obj=Max-size&obj=Tile-size&obj=Resolution-number";
  • getMetaDataURL: function(server,image){
  • return server + "?FIF=" + image + "&obj=IIP,1.0&obj=Max-size&obj=Tile-size&obj=Resolution-number";
    },

/* Return an individual tile request URL

The ruler is 4 pixel longer than it should

The problem is that ruler is draw with the border (2px) and the width of a html element don't consider the extra space added by border (2px for side).
So you must set the width to the correct length-(2px*2) to consider the border, or change the css adding the box-sizing: border-box rule. In this case you must increment to 6px the height of the ruler element.

Moving after rotation brakes

If you rotate the image and after that you try to move without the navigator (drag) the image, the moving direction is not correct. It is the same as if the image was not rotated. The same applies for the drag limit of the image.

viewer doesn't work on safari for ipad

The viewer fails to load when attempting to use in safari on an iPad.

The failure occurs in the function "constrain" on line 1527, because on iPad no "this.touch" object gets created.

This is evidently due to the "if" statement starting at line 1125, where the function this.addTouchEvents() is executed as an alternative to creating the this.touch object on IOS.

Exception when there is no image in the image path.

iipmooviewer-2.0-min.js throws an exception:

Uncaught TypeError: Cannot call method 'split' of undefined iipmooviewer-2.0-min.js:1785

It would appear that there is an alert prior to this which is causing the problem, but would be better if this were a function that returns false instead of alerting.

Unable to compile working version

Using the compiler command given in the readme I'm unable to get a working version of the compressed mooviewer. Trying to load an image give the error:

Uncaught TypeError: Cannot call method 'addClass' of null

This is on line 95 of the compressed file.

IIIF protocol and IIPImage iiif-compliant fork

Since IIPImage delivers images through URLs with a "iiif" parameter (http://example.org/iipsrv-iiif.fcgi?iiif=image.tif/full/full/0/native.jpg), iiif.js translator does not work out of the box because urls are constructed with "server + "/" + image" (required parameters are passed over…). It should be "server + "?iiif=" + image", unless you have some rewrite rules (which I didn't manage to set up properly).

I tested IIPMooviewer in front of IIPImage (with iiif support from klokantech's fork) and faced #38, #39 and the present issue. I did some workarounds that did the trick and finally make my demo work.
But there is a final issue with one tile at zoom level 1 and 2 (the size of the bottom-right tile is wrong and does not fit). I guess it is a math problem somewhere (I suppose it is on the server's side and not the viewer but not sure...).

zooming does not work

I just started to experiment with iipmooviewer, using the example index.html. Loading and panning the image works well, however, the zoom buttons and the +/- keys do not work. Also, specifying a zoom level as URL parameter doesn't appear to work. I'm using Firefox 48.0 on Ubuntu 16.04 with standard iipserver on Apache2. Any help is much appreciated!

IIIF - "native" quality

"native" is no longer a valid quality for the image in IIIF 2.x. It should be "default" instead.

License used?

I am adding an entry for IIPMooViewer in the FOSS4Lib registry (https://foss4lib.org/), and I don't see an open source license listed. Could you add that to the code repository, please?

Display of large images broken with IE 11

Internet Explorer 11 has problems showing large images like the Louvre or the Orion nebula from the demo images: neither the image nor the navigation window are visible. Changing the size with Ctrl-+ or Ctrl-- fixes the display.

Djatoka support

It's unclear from the code in the repository if Djatoka support is in, broken, or totally dropped. It's broken, see the changes I made in github.com/rsofaer/iipmooviewer, which aren't enough to get it working, but are a start. What's the stance on this? I may work to fix it, so we can move from our modified 1.1 code to the canonical repository. Right now the viewer isn't able to figure out how big the image is, I think since djatoka deals with levels in the image differently from iipserver or something.

navigation parameters don't work

The file index-dev.html differs from index.html in that it defines a navigation object in the parameters of the iipmooviewer object (in lines 98-102). These lines prevent the viewer from loading in a browser, whereas index.html works fine. Once the lines are taken out of index-dev.html, the viewer loads ok.

Firefox 26.0 on Ubuntu.

iiif mode: wrong tilesize for last image

issue71

This issue occurs only in iiif-mode. Let say we have an image that is in the lowest resolution is, let say 800 pixels wide and 70 pixels heigh. This hight is less than the default tile height of 256 pixels (70 pixels). However, also the fourth image is requested to have size !256x256. This will result in a scaled image, higher than 70 pixels.

Image width should be 800 - 3x256 = 32, height should be 70. With iiif (!256,256) this 32x70 image wil be resized, which clearly is not desired.

Keyboard buttons do not always work

In Internet Explorer v.9 the "+", "-", "h" keyboard buttons looks like do work.
In Firefox v.14.0.1 and in Chrome v.21.0 very often the keybord buttons stop working. The buttons under the navigation window and the mouse "double click"/"shift double click" do work however.

test page broken?

Hi,
after doing a fresh iipserver-install I'm trying to get the iipmooviewer test page to run on my server here, yet it seems to be completely broken at the moment. Here's what I've been doing:

The connection to the server works, image and tiles get loaded, the resources (js, css etc) as well (no HTML 404s) - yet somehow the viewer is not instantiated right: The tiles end up displayed alltogether, etc. -
Maybe I'm completely missing something obvious about the deployment... I'm thankful for any pointers!
Cheers Daniel

screenshot

trying with djatoka...

I set in index.html

new IIPMooViewer( "viewer", {
credit: 'credit',
server: 'http://localhost:8080/adore-djatoka/resolver',
protocol: 'djatoka',
render: 'random',
image: 'file:///D:/Aservers/img_01.jp2'
});

And it did not work... Is the viewer supposed to work with djatoka?

Dragging Bounds incorrect when image is rotated

When an image has been rotated, it's often impossible to drag the image fully to one side in a single motion. It appears that the dragging boundaries are not rotated with the image. This problem appears to be present in both Safari 8.0.3 and Firefox 35.0.1 on Mac OS X, and applies to the 3/2/15 Git commit as well as previous versions.

To reproduce the problem, zoom into an image sufficiently so that only a portion of the full image fits the viewport. Drag the image so that an edge is aligned with the viewport, then rotate the image 90 degrees. The dragging distance will be limited by the distance the unrotated image extended beyond the viewport in the horizontal or vertical directions instead of how the rotated image extends beyond the viewport.

For an extreme example, zoom in so that the image is wider and taller than the view port, and scroll the image before rotating so that the viewport is aligned with the left edge and vertical middle of the image. It should be possible to scroll up and down but not to the left in the image. After rotating counter-clockwise 90 degrees, the top of the image should be off the left side of the viewport, but it is not possible to drag the image to the right to reveal the hidden top, but it is possible to drag the image up even though the left edge of the image is visible in the viewport.

Adding a few "features" to iipmooviewer

Hi Ruven,

First, thanks for this great software, powerful and easy to set up! We use it to visualize high definition scanned documents.
To fit the needs of our project, we've done some slight changes to your code, fell free to integrate it if it adds some value to the project:

  • fixes in frech translation
  • rotate (left and right) buttons have been added in navigation bar
  • option "minNavWinWidth" has been added to specify a minimum width for the navigation window. This insures all the navigation buttons are displayed in a row even when 2 viewers are displayed side by side.
  • option "enablePanoramicView" (default true) has been added to avoid very large navigation window. Setting enablePanoramicView to false prevent the automatic navigation window enlargement on panoramic images.

Pierre
N.B. : new rotate icons are attached. How can I send you the patch?
rotateleft
rotateright

documentation for scale is incorrect

I believe the documentation for scale is incorrect, it reads as:

...
scale : adds a scale to the image. Specify the number of pixels per unit

units : define the units used. Can be in degrees or meters [default: meters].
...

while the scale value is clearly in pixels per mm

Thanks

error in deepzoom protocol

There is a error in the implementation of getThumbnailURL inside deepzoom.js protocol.
The thumbLevel var is defined from the value of this.tileSize that is never setted.
I suggest to change the parseMetaData function to set this variable adding this line before the return statement:

this.tileSize = {w: ts, h: ts};

And, inside getThumbnailURL change the definition of thumbLevel with this:

var thumbLevel = Math.log(this.tileSize.w) / Math.LN2 - 1;

Add support for PNG as output format

We require PNG in order to better integrate the IIP Image server with our Web CMS (Adobe Experience Manager). The UI components that AEM's DAM uses makes an assumption that the format of output is PNG. In addition, according to:

http://iipimage.sourceforge.net/2014/12/iiif/

IIP is nearly Level 2 IIIF Image API compliant and just requires PNG output to reach it so this change would make IIP Image server fully IIIF Image API version 2.0 compliant. Of course, the IIIF Image API is up to version 2.1 now and I'm unsure about IIP's chances of also being IIIF Image API version 2.1 compliant after this change, but perhaps it will be...?

Contrast Change Bug in IIP server (iipsrv.fcgi)

Hi Ruven,

I'm with the NASA Clickworkers team which is very interested in IIPMooviewer's pan/zoom capability for JP2 images to display and annotate large images of satellite imagery from Mars. Having something like IIPMooviewer has been very useful towards that end, so I wanted to express my appreciation for your work.

Adjusting the contrast of the images is important to us because in many cases landforms are obscured by shadows (e.g. inside deep craters). That said, I noticed that changing the contrast of the images produces some strange results for values where iip.contrast != 1 (see attached images). To me it appears that there may be a bug in the way the code in the JTL function (JTL.cc) manipulates the buffer, but I can't be certain.

-Sascha

contrast1

contrast2

Document scrolling outside of IIPMooViewer is broken on iOS devices

Line 25 of touch.js adds a touchmove event handler to the body of the HTML document to disable scrolling. This isn't necessarily desirable if, for example, the viewer appears in a absolutely positioned element above a scrolling document, and is in contrast with the rest of IIPMooViewer which operates only on the content of its container element. Please consider offering this behavior as an option that can be enabled or disabled depending on the client needs, or simply documenting when this might be needed.

(A workaround is to remove that line and rebuild the minified javascript per the README.)

Synchronization issue

Hi!

I'm working on a project where I'm showing 3 different instances of IIPMooViewer side by side and synchronize each of them manually.

For example:

Synchronize IIP1 and IIP2; IIP3 is not synchronized.

Wenn I'm navigating and zooming at IIP1 and IIP2 everything is working fine (IIP3 is not moving), but when I'm navigating and zooming at IIP3 the instances of IIP1 and IIP2 are moving.

When I'm logging IIPMooViewer.windows of IIP3 I get an array of IIP1 and IIP2.

Is this on purpose? Or is there any possibility to solve this issue?

best regards,
Markus

IIIF protocol : getTileURL method is not up-to-date

getTileURL() method in iiif.js (l.14) has not been updated and does not reflect the changes introduced by this commit : 0e74726 ("Protocol getTileUrl() function now takes an object simplifying the passing of more advanced parameters such as gamma")

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.