Opera extension: Imagus

, , , ,

Updated: February 10, 2013 - v0.9.5
The extension is intended to complement image features that (I think) is missing from Opera by default or give features that are just simply useful. The original idea was to implement as many image related features as it's possible. Read on to find out for what the extension is capable of...

By the way, this project is still under development, it doesn't contain serious bugs, but use with caution. The features aren't in final state, so their functionality may change, which means that after an update the extension maybe won't work properly or absolutely not.

Install extension Opera 11.60-12.15 To install the extension on Opera 12.10+, you have to add the following URL to the trusted sites (O-menu / Settings / Preferences (Ctrl+F12) / Advanced tab / Security / Trusted Websites):
http://files.myopera.com/Deathamns/extension/imagus/
Or download the extension file and drop it into the browser window.

Viewer

Replaces the browser's default image resizer to a more customizable version. For instance, it's possible to set the initial sizing mode or disable the resizing totally, it can detect if an image has higher resolution, adds possibility for rotation, options for changing background color or image border, zooming to a selected area or zooming with mouse wheel, and more...

Hover zoom

Enlarges thumbnails and linked images (or even linked thumbnails) into a popup with just a mouse hover.
As well as the Viewer, it's also fairly customizable with some extra features, such as full-zoom which allows you to view the image with original size in the same tab, rotation or it can load image albums as well.

Tools

This section contains global features or features that have less options.

  • Shortcuts - they can be used both on Viewer and Hover zoom
  • Opening images - many ways for opening images from web pages (e.g., background images)
  • Send image to... - it sends the image address to an online service (e.g., reverse image search, image editor, gif frame extractor...)
    New service can be added in preferences (one per line).
    Format: "[+]Name|search engine's URL". In the service URL is placed the image address with the %url variable.
    Example: TinEye|http://www.tineye.com/search?url=%url
    If you put a "+" sign before the name (e.g., "+TinEye"), then it means that the service will be used when the shortcut is used. Multiple entries can be enabled, then all of them will be opened.

Sieve

This is a set of rules which are helping the extension to find the larger images.
The rules are based on regular expressions, JavaScript and a bit of HTML.

Gallery

This is something like a bookmark for images. It stores only the image address with a thumbnail, and if possible, then one or two source link. The "Source", which is the address of the page where you've seen the image, and the "Target", which is the address of the link (if it wasn't the same as the zoomed image address).
When an image is opened or "hoverzoomed", then pressing the shortcut (G by default) will add it to the list without any questions. Shift + G will prompt for labels. Deleting images from the list: Ctrl + Right click on the thumbnail cell or Ctrl + Click to select some and the minus button from the button-list. Shift + Right click on a cell to edit the labels.

Grants

At Grants you can tell on which sites can the extension work.
It's also possible to block just some Sieve rules.

Syntax: grant operator (optionally followed by rules separated with commas) colon address
(!|!!|~|~~)[rule1,rule2,...]:(*|string|regular expression)
Also there is possibility to add comment lines, simply by starting the line with a ; (semicolon).
When you double the grant operator (! or ~), then it means that you want use regular expression in the URL. "*" means everything.
Example for blocking on all sites:
!:*
Blocking all sites except opera.com (actually it will allow any URL that contains the "opera.com" string, and yes, the order matters):
!:*
~:opera.com
To block a few sites:
!:http://www.google.com
!:opera.com
!!:^ftp://
Blocking on all Google sites, except German and French:
!:http://www.google.com/
~~:^http://www\.google\.(?:de|fr)
Allowing only the "MyOpera" and "LinkedImages" rules here on my.opera.com:
~#MyOpera,LinkedImages:my.opera.com


For the extension's icon thanks goes to http://esk6a.deviantart.com/

Known Issues

# (vw) Rotated image has incorrect position
# (vw) When larger image was opened, going back won't properly load the smaller one
# (vw) "res" cannot be handled if it is a function
# (lst) Thumbnails are not loading when high-res mode disabled, and the specific rules support it
# (lst) Sometimes the last thumbnails are off the screen
# (hz) Only one SVG can be loaded in the popup at a given session (DSK-376698)
# (hz) SVGs disappear sometimes when zooming a bit deeper (seems it's an Opera bug)
# (hz) Preload doesn't work (only) for high-res images
# (hz) Preload on hover doesn't work if there is more than one possible image to load
# (hz) Hiding image dimensions in caption hides the whole caption
# (hz) Sometimes the image blinks once when it started to load, especially when interlaced loading is on (but If I have to guess, this is a bug in Opera, again)

Some Opera related issues.

v0.9.5 - February 10, 2013 | Update! | Changelog

Fixes for the problems introduced in the previous release, also some other improvements, which are listed in the changelog. There was a modification, that broke some of the rules, but updating the Sieve will solve the problem.

v0.9.4 - January 20, 2013

Read the changelog, because this time there is not much to talk about. If you don't understand something, feel free to ask.

Don't forget, there is no auto-update anymore, you have to click the "Update!" or "Install extension" link above. And, as usually, updating the Sieve is recommended too.

In addition, a translation management system was made in the background, so if you're interested in to translate the extension to your language, drop me an email (my username at myopera dot com).

v0.9.3 - September 09, 2012

From this version the extension won't be automatically updated by the browser. However, the notification about new version will appear on the toolbar icon (the new version number with green background) as did before.
This means that next time you have to manually update the extension, coming here and clicking on the "Update!" link above (you can click on "Install extension" at the top, it's the same).
It's recommended to update, since if you don't, you won't get any notification about future releases.

v0.9.2 - August 17, 2012

!! As in version 0.9, you have to update the Sieve again (Preferences / Sieve / the update button - double arrow pointing down). It must be done, otherwise most of the features of the extension won't work.

  • From now, every "link" and "img" parameter must start without the https?:// protocol string and the www sub-domain (if present). This applies only to http.
    The reason of this to skip writing every time the protocol, and the www, because they are very common, almost every rule starts with that.
    For example if the URL is "http://www.opera.com/image" (we assume that the site has a secure connection, and it works also without www), then the older version's rule would look like this:
    link: ^(https?//(www\.)?opera\.com/image)
    to: $1
    In the new version, the URL first will be converted to "opera.com/image" and this will be checked against the regexp, so now the rule should be written as:
    link: ^(opera\.com/image)
    to: $1
    But the result will be the same; "http://www.opera.com/image" (returned by "to: $1"), because what is removed first, it will be added later. However, sometimes you want to prevent this behavior (adding what is removed), therefore if the replacement starts with http, then the script won't prepend the removed string.
    There may be cases when the URL will work with "www" and some other sub-domain. E.g., "http://www.opera.com" and "http://test.opera.com". In that case the following expression will match only "http://test.opera.com", but not the URL with "www":
    link: ^test\.opera\.com
    Since the www is removed, and now the URL can be "opera.com" or "test.opera.com", the correct expression would be:
    link: ^(?:test\.)?opera\.com

    Besides these, from now, the "to" parameter can have only one function, and that function can return multiple results joined by new lines. BUT, if you use this method, the full URL must be matched, and full URL must be returned. If "to" is not a function, these restrictions have no significance.



Something to play with...
The following stuff is experimental, they future and exact functionality is not known yet.

Screen capture (Opera 12.10+)
Since this sounds like an image related stuff, probably this will be implemented somehow into the extension. Actually, it's already working pretty well, however the only thing you can do with the captured image is to save.

So, how does it work?
Go to a random web-page, and press the shortcut (Alt+Shift+T by default, change at Prefs/Tools/Shortcuts) to capture the visible content or Ctrl+Alt+Shift+T to capture the entire page.

Opera can capture only the visible content, means, that the extension must jump all over the page to take shots of every part, which will seem a bit weird, so don't panic, just wait until a new page opens with the captured image (actually canvas), where you can choose the output format (jpeg or png), and then save as.

It works on all pages where an extension can work (text, html, xml, svg (of course svg can be saved in Opera already, which is the recommended method)).

There are sites that use infinite scrolling, or maybe you use an extension for that purpose (AutoPatchWork, AutoPager), but when you taking a screen-shot, probably you don't want to end up with a kilometer-long image, and that's why the extension won't go further than the page size was at the moment when the capture started.

There are floating elements that are always at the same place on the screen. Normally they would be printed on every frame, but the extension tires to handle them, but it's pretty hard to deal with them correctly, so maybe you won't always get the result what you want.

Other problems you may face with screen capturing:
- plugin-content can't be captured
- it can be used only when page-size is 100%
- you may get interesting results with enabled HWA
- on captured image text doesn't have sub-pixel rendering
- use "Fit to Width" to hide horizontal scrollbars if they're not needed
- dimensions of dynamic pages can change, which will result a somewhat broken image
- you may first scroll down the page to force the dynamically generated content to load
- "default" is the suggested filename when saving (since, sadly, there is no Opera API for saving files)
- the page is re-rendered before capture, so you won't get what you actually see (example)
- it may use pretty much memory on large pages (too long pages cannot be captured (a blank canvas will be shown), since Opera uses memory limit)

Extracting frames from animated images
As the title says, it can extract frames from APNG or GIF images, also play them slower/faster forward/backward.
Unfortunately, Opera doesn't use the global cache for extensions, so the image will be downloaded again, which will take a couple of moments for a few MB image (at the moment there is a size limit, maximum 15MB allowed).

To try out, add a new line to the "Send image to..." list at Preferences / Tools:
frames|anim.html?#%url
Or add this if you want to be able to save the frames (slower) (added by default):
frames|anim.html?img#%url

Opera extension: Source

Comments

Alen Pendićsenja1 Friday, August 17, 2012 5:22:16 PM

Originally posted by Optidragon:

Download page 404 not found...


You can download from changelog -> 0.9.2

inDigazzZAnuarSh Friday, August 17, 2012 6:16:53 PM

yes

Deathamns Friday, August 17, 2012 7:01:41 PM

Originally posted by Optidragon:

Download page 404 not found...

Sorry, it's fixed now.

Originally posted by senja1:

You can download from changelog -> 0.9.2

Keep in mind that if you download from the archive, then you won't get auto-updated.
So, if someone downloaded from there, I recommend to re-install it from the main link.

Unregistered user Friday, August 17, 2012 8:11:03 PM

Anonymous writes: I think there is a bug in image rotation; you can't scroll when the image is larger than viewable area: http://www.imagebam.com/image/2bae8b206429435

Unregistered user Friday, August 17, 2012 10:04:17 PM

Anonymous writes: Great extension. There is one thing, though. Captions at hover zoom. This is an useful thing and I generally don't mind it, but when I use this extension to preview comics from thumbnails, then caption can cover the upper (or bottom) line of text. Is there any possibility to temporary hide caption (if captions are on) or temporary show caption (if captions are off by default). Keyboard shortcut would hide captions only for currently viewed image.

metude Saturday, August 18, 2012 12:11:01 AM

You're saying "I've old machine, poor connection" then how did you become a good programmer? Should I sell my Core-i7 laptop yes

DoTheEvo Saturday, August 18, 2012 1:34:52 AM

Hover zoom related, would it be possible to set mouse-wheel-scroll-up to have the same function as 'z' key when you hover over image link - 'Enter full-zoom mode'?

allouh Saturday, August 18, 2012 3:51:13 AM

Originally posted by DoTheEvo:

Hover zoom related, would it be possible to set mouse-wheel-scroll-up to have the same function as 'z' key when you hover over image link - 'Enter full-zoom mode'?


There is long-press right click on the image or thumbnail for this.

РафизRafiz1990 Saturday, August 18, 2012 5:45:46 AM

Thanks very much! Finally Opera can make screenshots!

Unregistered user Saturday, August 18, 2012 9:26:00 AM

maganz writes: In 0.9.1, with "Enable plug-ins only on demand" activated, an swf can be opened in full-screen with right long-press on the placeholder (triangle in grey circle). If updated from 0.9.1 to 0.9.2 there is no problem, but if 0.9.2 was new installed (not updated from 0.9.1) the swf-full-screen does not work. Example: http://armorgames.com/play/2765/world-wars

Deathamns Saturday, August 18, 2012 12:28:33 PM

Originally posted by anonymous:

I think there is a bug in image rotation

I forgot to include known issues....

Originally posted by anonymous:

Is there any possibility to temporary hide caption (if captions are on)

Preferences / Hz / Shortcuts at the bottom (Shift + C by default).

Originally posted by metude:

Should I sell my Core-i7 laptop

I'm not sure that these are factors, but we can try out. We can swap PCs for a while, and we'll see.

DoTheEvo

The method that allouh mentioned isn't good?

maganz

It's disabled by default. Enable at Preferences / Tools / Opening images.

Unregistered user Saturday, August 18, 2012 12:58:10 PM

maganz writes: Thanks for your quick response. Thanks for this GREAT extension.

Unregistered user Saturday, August 18, 2012 2:12:07 PM

Paladin writes: Imagus 0.9.2 wonderful! Deathamns's done a amazing job.

Unregistered user Sunday, August 19, 2012 3:03:44 AM

Anonymous writes: Anyone know how to set Imagus up to use on Pixiv? Alternatively, much chance of getting previews from the user gallery thumbnails there?

Deathamns Sunday, August 19, 2012 4:22:50 AM

pixiv.net added, you can update the Sieve. However, on that site the "Send referrer information" option must be enabled in Opera (if it's not, but it is by default), and you can only enlarge images, if you are on that site.

allouh Sunday, August 19, 2012 8:57:34 AM

Since "Esc" key can now stop loading images without breaking the extension; Is there a way to create a button that can send "Esc" key?
It would be more convenient to use this button instead the original "stop" button?

Deathamns Sunday, August 19, 2012 9:34:38 AM

It can't stop all images from loading, only the enlarged image. And in order to be able to use shortcuts at Hz, the popup must be visible, so, if you want to make a button, which probably will be placed on some addressbar, then you have to move your cursor away from the link/thumbnail, and as a result the popup will hide itself, so the Esc will be sent to the browser normally.

Unregistered user Sunday, August 19, 2012 8:24:14 PM

Anonymous writes: Deathamns, This is the previous Anonymous. Thanks a lot for the pixiv update! I switched from ImagePreviewer the moment I found out about Imagus and I've never looked back. The functionality is excellent and the options are more navigable. The only thing I had ever missed was previewing/magnifying images in user galleries and the like on Pixiv.net, so with this Sieve update, I could not be happier. Thanks again.

inDigazzZAnuarSh Monday, August 20, 2012 4:54:29 AM

Originally posted by Deathamns:

From now, every "link" and "img" parameter must start without the https?:// protocol string and the www sub-domain (if present). This applies only to http.



Enough in each rule to remove http://?
There many rules with http

Google Images
^https?://(?:www|images|encrypted)\.google\.[^/]+/imgres\?(?:[^=]+=[^&]+&)*?imgurl=([^&]+).*
i've removed https?://, but rule not working

Amazon
^(https?://(?:images\.|(?:images-na\.ssl-|(?![gz]-)[^.]+\.)images-)amazon\.com/images/[^/]+/[^.]+\.).+\.

inDigazzZAnuarSh Monday, August 20, 2012 4:58:32 AM

Sorry, but Sieve is not immediately updated.

Deathamns Monday, August 20, 2012 5:12:12 AM

I've already fixed all of them, so you don't have to do anything, just update the Sieve.
And true, you have to wait 3 seconds to see the result.

inDigazzZAnuarSh Monday, August 20, 2012 9:48:38 AM

Sieve for Wallbase isn't working (on page with results) - Proloader is Yellow.

Deathamns Monday, August 20, 2012 10:58:01 AM

I didn't find any link on wallbase.cc that didn't work for me. Show me an example. Maybe you are logged in, and then the site gives different source code (we can test it, open this page, Ctrl+U, save the source code, and send me the file).

inDigazzZAnuarSh Monday, August 20, 2012 11:14:26 AM

Originally posted by Deathamns:

Maybe you are logged in


yeap

- link deleted -

inDigazzZAnuarSh Monday, August 20, 2012 11:35:25 AM

Originally posted by AnuarSh:

- link deleted -


What is this? You've already took a file?

Deathamns Monday, August 20, 2012 11:39:53 AM

Yes, and I already checked out, and see no difference, so I'm thinking a bit more what could be the problem.

Deathamns Monday, August 20, 2012 11:52:48 AM

I made an account, clicked on Random, tried an image, and it's working as logged in too.

Edit: On some sites there is a limit how fast you can open a page. If you use automatic preloading, then the site probably will ban you, and you can't open pages...

inDigazzZAnuarSh Monday, August 20, 2012 11:56:41 AM

after hovering image (logged off)

[20.08.2012 16:53:45] CSS - http://wallbase.cc/
HTML style attribute
-o-transition is an unknown property
Line 1:
  white-space: nowrap !important;text-overflow: ellipsis !important;-o-transition:
  --------------------------------------------------------------------------------^


[20.08.2012 16:54:05] JavaScript - widget://wuid-0040c0af-04a6-ab4d-a18b-9a7973a8da54/imagus.html
console.log
Imagus: no match for wallbase



i told about page with search results, not page with image
try to search
bmw
and hover over first image

Deathamns Monday, August 20, 2012 12:06:09 PM

Originally posted by AnuarSh:

i told about page with search results, not page with image

I know, but the extension will parse the page that holds the image, doesn't matter where you try to view them.

At the moment the server is unavailable for me (500 - Internal Server Error), and probably this was your problem too.
After I finished writing this comment, it's available again.

Unregistered user Monday, August 20, 2012 6:22:42 PM

Anonymous writes: I can't make the pop up for YouTube videos work, after the update. This feature served me a great deal, but now it's gone. I want it back. Can you help?

Farow Monday, August 20, 2012 10:04:54 PM

Preloading images on hover doesn't work. When I move the mouse to a different link, it stops loading, just like with no preloading.

Edit: after a bit of browsing it seems to me that it works on links over images but not plain links.

Edit edit: actually, I'm not so sure anymore. It's kind of weird.

DoTheEvo Tuesday, August 21, 2012 1:18:40 AM

Originally posted by Deathamns:

The method that allouh mentioned isn't good?


Didn't know about it, but I would consider scrolling to be a slightly better choice, since it doesn't need waiting and its something more intuitive than a long press.
Is there also already a way to get out of the full-zoom mode with the mouse only? Should be, maybe just some close [X] top right corner or clicking the caption, or some type of clicking outside...

inDigazzZAnuarSh Tuesday, August 21, 2012 3:25:41 AM

Originally posted by Deathamns:

At the moment the server is unavailable for me (500 - Internal Server Error), and probably this was your problem too.


No, update the rules (again) and wallbase earned.

inDigazzZAnuarSh Tuesday, August 21, 2012 6:28:20 AM

We will have to wait another four months until the next update will be released?
Screenshoting is good, but the Image Lister is better (especially not just for pictures from the same album, but all the pictures on the page.)

inDigazzZAnuarSh Tuesday, August 21, 2012 7:04:57 AM

How to use Image Lister now?

I see the Image Lister's indicator, but the arrow "Left / Right" does not work.



and a bug (i think)
1. go to .gifs - funny, animated gifs for your viewing pleasure
2. Hover over any image and wait till it fully loaded
3. Hover over next image and when it will STARTS loading move cursor on image that was loaded previously.

Loading of second image STOPS till next hover.

Deathamns Tuesday, August 21, 2012 11:33:59 AM

Originally posted by anonymous:

I can't make the pop up for YouTube videos work, after the update. This feature served me a great deal, but now it's gone. I want it back. Can you help?

Because of the new changes, this is not possible anymore (but I mentioned it, probably you haven't read my comments above in the post). And since, it's not really related to images, probably it won't be implemented as an individual feature.

Farow

I updated the known issues (preload on hover doesn't work with rules that have to try to load multiple images).

DoTheEvo

I want to keep scrolling for quick hiding. Since 0.9 there is an option that will hide the full-zoomed popup on click.

AnuarSh

This version was meant to be released around the end of September, but I knew that I won't have enough time for development, so I decided to throw out what was already done. There is no concrete pattern that I follow, but for the next update it will be two months at least. If you are using Marlin, then probably that's the problem, they did something with key handling, and half of them doesn't work with JavaScript events. Although Space and Shift+Space does. And the last one is not a bug, I mentioned in the release notes above, that this is a new behavior.

Unregistered user Tuesday, August 21, 2012 11:51:26 AM

Anonymous writes: How to revert to the last version of Imagus which supported the pop-up feature for YouTube?

Deathamns Tuesday, August 21, 2012 1:00:26 PM

Archive v0.9.1, import this file at Sieve, and enable the yt-vimeo_video rule.

Unregistered user Tuesday, August 21, 2012 3:43:46 PM

Anonymous writes: Thank you Deathamns, that means a lot to me.

metude Tuesday, August 21, 2012 7:01:18 PM

@indigazzz maybe your issue caused from another extension. Could you try with portable clean installion. I'm using that site and any problem exist.

inDigazzZAnuarSh Wednesday, August 22, 2012 3:41:28 AM

Originally posted by metude:

I'm using that site and any problem exist.


Which site?

DoTheEvo Wednesday, August 22, 2012 5:47:50 AM

Originally posted by anonymous:

Anonymous writes:

I can't make the pop up for YouTube videos work, after the update. This feature served me a great deal, but now it's gone. I want it back. Can you help?

maybe this as alternative? http://userscripts.org/scripts/show/83584

Originally posted by Deathamns:

Since 0.9 there is an option that will hide the full-zoomed popup on click.

Ah, good. I feel retarded.

metude Wednesday, August 22, 2012 7:27:32 AM

Originally posted by AnuarSh:

Which site?


Wallbase.

inDigazzZAnuarSh Wednesday, August 22, 2012 7:44:28 AM

Originally posted by metude:

Wallbase.


Wallbase starts working after updating Sieve
http://my.opera.com/Deathamns/blog/show.dml/24181412?startidx=650#comment95050322

alekksander Wednesday, August 22, 2012 2:11:35 PM

any chance to make it work on rateyourmusic.com? especially on the album miniatures on someones profile

Deathamns Wednesday, August 22, 2012 4:06:40 PM

Not really. There is no specific pattern in image addresses, from the thumbnail the original image can't be guessed.

Unregistered user Thursday, August 23, 2012 9:53:46 AM

Anonymous writes: No work with motherless

Durian ZheitkDurianZheitk Friday, August 24, 2012 7:10:59 PM

a) how can I know the Sieve has been updated O_o? (although I'm not sure what the Sieve is lol, but here you say it needs to update)
b) how about pre-load to albums? pre-loading the next (or 2 next) pics will make it more fluent/pleasant while using the arrow keys...

edit1: humm, by the way, I would like to learn how to add custom rules to some sites, can anyone help me?
edit2: c) and custom load~animation for different the file types?

the last thing (I swear ñ_ñ) why "Draw outline around zoom-able objects" has never worked for me? It draws the line just for a moment while hovering it...

Deathamns Saturday, August 25, 2012 12:19:23 PM

a) You can't know for sure, but if it will enlarge images, then probably it has been updated. Sieve - collection of rules, which are helping the extension to filter the URLs out.
b) It's intentional that pre-loading is not available there, but it will be in the future.

edit1: Here are the basics, but there is no detailed tutorial yet.

c) I don't see the importance of this, also the file type can be guessed only from the extension of the image, which is not always the same as the original type (e.g., for imgur images it's irrelevant what extension you write, it will load the image anyway, and there are lots of examples when the file extension is not present).

last thing: That is the point of that option. It's just gives a hint what can be enlarged, so you don't have to wait the display delay (of course it has sense only when you use delay, which is 0.5s by default).

Durian ZheitkDurianZheitk Saturday, August 25, 2012 7:28:41 PM

last thing: I thought it was to draw outlines so you can distinguish zoomable links with a glance knockout

Another thing: the shorcuts in the "Tools" sections (the right-click related) have never worked for me ¿It's a Opera versión issue (12.01) or I just don't understand how it works? (I will test it later)whistle

How to use Quote function:

  1. Select some text
  2. Click on the Quote link

Write a comment

Comment
(BBcode and HTML is turned off for anonymous user comments.)

If you can't read the words, press the small reload icon.


Smilies