SlideViewer is an automatic picture viewer. Just point SlideViewer at directories containing images, and it will sequentially display the images as a slide-show. Convenient controls enable altering the speed, pausing, going-back, as well as sequencing manually.
SlideViewer automatically searches through hierarchical directory branches to sequentially display all PNG, JPEG, GIF, and PPM images. The sequential image viewing speed is user-controllable, both at invocation by command-line argument, as well as during viewing by front-panel control. The images are displayed to fit within the maximum size of the application's window. You control the window's size, as with any other application, by stretching the window's borders. Therefore, the window, and so the pictures themselves, can be displayed full-screen or fairly small. Yet SlideViewer always preserves the aspect-ratio for any window-size and photo-dimension. It does not distort images.
SlideViewer's features are different from other image-displayers which do not automatically descend directory branches, do not display multiple directories automatically, do not maximally fit images in the viewing window, or that do not provide much user control of the sequencing.
SlideViewer expects a directory name, or list of directory names, on the invocation command-line. If none are given, it uses the current directory. It displays all images under the given directory(ies).
slideviewer wedding_album honeymoon_dir baby_pictures
If invoked with the -interactive option, SlideViewer opens a file-browser first, which allows you to navigate and select a directory of pictures. It also allows setting repeat and shuffle modes graphically, instead of on the command-line. This mode is useful when the appication is started by clicking on a launcher icon. The interactive control pop-up window is available at all times, and in all modes, by clicking the question mark (?) button on the lower right panel.
-nlevels xx - Restricts file search to xx directory levels, where xx is a positive integer. For example, to view images only in the top two levels, use: -nlevels 2. Limits the depth of directory descent. To view images only in the current directory, use: slideviewer -nlevels 1. -skip xx - Causes SlideViewer to skip the first xx images. SlideViewer numbers each image displayed, and shows the number and file-name in the background text-window from which it was launched. Use this option to begin viewing from a specific image number. -viewperiod xx - Sets the initial sequencing speed to be xx seconds. The default initial viewing period is 1-second per image. Speed can also be changed interactively by the +/- buttons in the lower left corner. -repeat - Repeatedly sequence through images forever. -cycles n - Sequence through images n times. -randshuffle - Show images in random order. -interactive - Interactive mode. Opens a file-browser first, allowing you to navigate to selected directory of pictures. It also allows setting repeat and shuffle modes graphically, instead of on the command-line. -help - List these options.
SlideViewer relies on the Net-PBM utilities to read JPEG, GIF, PNG, or other file types. The net-pbm utilities are usually resident by default on most Linux/Unix systems. If not, get them from http://netpbm.sourceforge.net/.
Although source-code is provided, a pre-compiled executable is also provided that should work on most Linux PCs. Re-compile if needed. A makefile is included for Linux PCs. General compile instructions are included in the header comment of the program. SlideViewer also works correctly on Microsoft PCs by compiling with the MinGW compiler as shown in the header comment, and getting the Net-PBM utilities.
SlideViewer is written in ANSI-C using the Open Tool-Kit (OTK) graphics environment. To recompile, get the latest version of OTK from http://otk.sourceforge.net/
Future planned features include:
Image transition effects. Slow-fade, swirls, pinwheels, etc.
Option to rotate pictures.
SlideViewer is released under the permissive BSD license. SlideViewer consists of a single file, which can be readily modified for various purposes.