Skip to content

About

An extensible image viewer in Java Swing

Resources

Stars

2 stars

Watchers

1 watching

Forks

Repository files navigation

ImageViewer

This is "ImageViewer", a 100% Java image viewer with a UI written in Java Swing.

ImageViewer

Features:

  • extremely customizable via Java extension classes
  • highly configurable UI with LookAndFeel support
  • quickly sort, rename, move, or symlink images
  • very programmer-friendly if you want to write your own extensions

How do I get it?

An installer tarball is available for linux-based systems. Just download, extract, and run the installer script to install the application:

Alternatively, you can clone this repo and build it with Maven (Java 25 or higher required):

git clone https://github.com/scorbo2/imageviewer.git
cd imageviewer
mvn package # requires Java 25 or higher!

# Run manually:
cd target
java -jar imageviewer-3.3.jar

If you have install-scripts installed and you are running the build on a Linux system, the installer tarball will be generated for you automatically during the build and placed in the target directory.

Using the installer tarball is preferable to running manually from the command line, as you get a launcher script that sets environment variables properly, and you get a desktop icon for easy access.

User guide

Out of the box, ImageViewer is useful for browsing and viewing images. The real power of ImageViewer comes from the application extension mechanism, which allows additional functionality to be added. Visit the extension manager dialog and switch to the "Available" tab to see a list of extensions that are available for download:

Extension manager

Built-in extensions

Out of the box, ImageViewer comes with the following built-in extensions:

  • Image information - provides a popup with information about the image file.
  • Repeat and undo - allows you to repeat the previous image move/copy/symlink option, or undo it.
  • Statistics tracker - tracks statistics on image operations and reports on them.
  • Thumbnail caching - caches thumbnails automatically to speed up access to frequently-visited directories.

Additional available extensions

  • Companion text file - allows you to have a text file alongside an image, and will handle moving/copying/symlinking it as needed.
  • Convert image - convert an image or a directory of images from png to jpeg or vice versa.
  • Full screen - allows you to view images full screen with keyboard navigation. Great for slideshows.
  • Quick access - provides a "quick access" panel for very easy sorting of images to various destination directories.
  • Resize image - resize a single image or a directory of images using configurable resize triggers.
  • Transform image - rotate, mirror, or flip images easily.
  • Crop image - easily crop images using a rectangular selection.
  • Add border - easily add a configurable border to a single images or a directory of images.
  • Add watermark - easily add a watermark with configurable position and transparency to an image or a directory of images.
  • ICE - tag images semantically and search for images by tag

Create your own extension!

Because ImageViewer full source is available and is reasonably well documented, you can create your own extension to do whatever image operation you'd like. A great starting point for this would be to pick any of the extensions above (the source for which is also freely available) and use it as a template to see what kind of things are possible to do in an extension. Or, take a look at the ImageViewerExtension class and its associated Javadocs, to see the extension points that your extension can hook into.

License

ImageViewer is made available under the MIT license: https://opensource.org/license/mit

Revision history

Full release notes and version history

About

An extensible image viewer in Java Swing

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages