Requirement of a good advanced-user's image viewer

I have been long looking for an opensource lightweight image viewers for advanced users, users who are feature greedy, can remember keyboard shortcuts, want maxium efficiency with least resources. In detail my sense of a good image viewer for advanced users is defined as:

  1. accepts multiple formats
  2. have enough shortcut keys to be UI-efficient
  3. lightweight, without unncecessary features (e.g. remember user's placement of image icons), not using too much resouce when not having to (e.g. when just started).
  4. flexible to be adapted into user's workflow
  5. desn't have a full pages of software dependency.
  6. can take advantage of display hardware to draw image better
  7. Yet having good I18N support and accessibility if possible.

It seems to me xnview satisfies many criteria listed above. I tried it for some time with the feeling it cannot be improved to have good I18N support, but the rest features are fine to me

gthumb has a dependency of gnome which is not necessary considered by many people like me. Note that I do think gnome is a good platform and it's very much needed to have good image viewer software for it, requiring gnome if it has to, thus if gthumb is good it should exist (I have not enough experience with it). You must understand a person can appreciate goodness of a software but refuse to use it himself as the daily system (like deciding not to merry a good boy...). I say this because these days (especially in the discussion in zeuux mailing list where I also join discussion) saying not wanting gnome dependency has the risk of starting flames and easily get OP labled as a unfriendly geek. I am not that kind.

F-spot is not my cup of tea for the same reason as above. Besides f-spot is an album management software, falss into a different catgegory. I do use it to manage my photo album on my girlfriends' computer (runs Ubuntu+Gnome). Since we share albums I don't need an album management software on my own.

Being the only opensource image viewer with thumbnail browsing feature (important) yet without gnome/kde dependency , gqview is my best friend for years. (imgSeek lacks thumbnail browsing, xnview is not opensource, gimmage doesn't support browsing, rox doesn't support viewing... I really tried a lot different software.) Unfortunately it also haven't been developed for many years. I am still waiting for its fork, Geequie to have a first release.

I got several scenario that most image viewer failed to work well. I hope the image viewer deverlopers take a look at these scenarios and see if they can enhance their viewer accordingly.

Print a postal card

Upon seeing a beautiful photo on the Internet and saved it to the desktop, the user wish to print a postal card with that photo. The image viewer should be albe to provide user a postal card size to select (which can be made a preference). Because he probably wants to print one person in it instead of the whole photo, or because the photo ratio is different from the postal card, the viewer should provide user an interface to decide how to cut the photo. Offer for rotate is making sense! Sometimes people want to print a section of landscape photo as portrait.

Print a graph with a lot of vivid lines

Examples are engineer's graph. They often contain thin lines that should be printed vivid. The best format for such picture is postscript, but see how many times we receive such picture in PNG format instead. The image viewer should provide user the option to print in fixed dpi and display preview how big such dpi make the graph looks in the paper. These are not photos, and randomly resize them to fit any dpi and any print area, like most image viewer does, is not acceptable because the lines would blend into the background becoming less vivid where it is itended to be very vivid. As a bouns the image viewer may offer to save the dpi setting back to the original picture, and offer to make a backup of the original before doing so.

Managing versions

Some people perfer to store different versions of a photo in the same folder as part of their workflow. Photographers or those who does image retouch likes that. e.g. "Plum Tree.jpg", "Plum Tree (light adjusted).jpg". If image viewer can offer user a regular expression for matching and comparing different version of image, it gives a great bonus to those who need it. For me I use a simple method of using ".jpg" for original and ".jpeg" for retouched version, so I can turn off ".jpg" format in gqview and only check the retouched version. When I enabled ".jpg" format again, I can always see the original and retouched sitting one by one.

Resize

Strictly saying this is not an image viewing feature but an editing feature. But people often come across this requirement when viewing an image. Other requirements like adjust white balance is less hit during viewing an image.

If a user want to adjust white balance, he probably also want to adjust gray-scale and many other things that makes him decide to use an image editor. Resize is different, many user find it convenient to do in the viewer. There is often a second reason: some images are hardly editable before they are shrinked. A resize is part of user's workflow before start editing; it is cheaper to do it before launching a 300-MB application then after.

batch converting .JPG to .jpeg

Me for example, whenever see a .JPG file would immediately change it to .jpg or .jpeg, because many desktop software on Linux do not recognize .JPG, keeping it is creating trouble for my self later when I wish to add it to a publication document, or retouch it etc. If the viewer can offer to change .JPG to .jpg on-sight of these files it's a great bonus for Linux user who receives pictures frequently.

For batch conversion experienced commandline users may find convient to do 'convert -resize' on command line, but: advanced user does not equal to command line user, there are really smart people on organizing their photo process workflow who do not use commandline as easy. There is still a need for simple user interface to set resize criteria and allow user process a batch resize or file format conversion. This feature doesn't have to be too fat, those who really want rich options during resizing and file format conversion would still find commandline easier.

send image to a friend (can be using a web service)

Sending image to a friend by email is not difficult and implemented in some viewers, but: the viewer did not properly warn user sending a 20MB image or sending 200 images in a single email, which usually fail for email size limit. This is not a novice feature, even advanced user should not be punished by their mistake on not having checked size before sending or hit Ctrl+A by accident before clicking "send". The viewer should suggest resizing the images before sending, or upload it to an image sharing website (flickr?). If it offers resizing the image, it better offer batch resize for a defined criteria.

viewing a fax

A good image viewer does not have to be capable of viewing fax (though it is good to have), but it should not pretend it can. It should not fool the user into thinking the fax they are opening (usually in multi-page tiff format or multi-page PDF format) is a single page document. Even if it cannot display any page after the first, it should tell user how many pages are there in it. Novince user deserve this message and advanced user will also feel confortable with this message then having no message at all.

If image version feature could be implemented, fax viewing probably can be implmented with alike user interface, where each page is a version. It's a good bounes if the viewer can know whether or not there is a fax viewer installed (e..g kfax) and offer to launch that when user want to see a fax.

Comparison and duplicate finding

Can be very helpful too.


Google No GIFs Valid XHTML 1.1! Creative Commons License Viewable With Any Browser