Contents
[ Introduction | Installation | Usage | The iconbar icon | Control window | Settings window | The status window | Screenshots | Contact | Changes ]
[ Licence ]
[ Introduction | Installation | Usage | The iconbar icon | Control window | Settings window | The status window | Screenshots | Contact | Changes ]
[ Licence ]
TranJPEG is a WIMP front-end for the IJPG command-line utility 'jpegtran' and gives easy access to the features of the utility. It allows JPEG images to be transformed in a number of ways in a lossless process. See below for a list of the transformations currently supported by TranJPEG. The version of jpegtran currently supplied with TranJPEG is version 9.
For a new installation, simply drag and drop the TranJPEG application into the directory of your choice.
If you have a previous copy of TranJPEG you have two choices.
TranJPEG is run in the usual way by double clicking on its icon. It will install on the icon bar.
The file, or selection of files, to be transformed should be dragged to TranJPEG, either to the iconbar icon, when the control window will open, or if the control window is already open, files may be dragged to it.
The selection of files can be added to by dragging further selections. In addition, if one or more folders are dragged, then TranJPEG will add any JPEG files in the folder to the list.
TranJPEG will NOT recurse down the directory structure, only JPEG files in the top level will be added to the filelist.
TranJPEG uses a taskwindow to run the jpegtran binary, so the process essentially multitasks, and the machine remains usable during the batch processing.
If a selection of JPEG files is dragged to the iconbar icon, these files will be added to the list of files to be processed. The control window will open automatically if not already open.
Clicking with SELECT on the iconbar icon will open the control window.
The control window is shown below.
The main part of the window controls the transformation actions that may be specified.
TranJPEG will attempt to read the orientation flag from the exif data, and if successful, will rotate the image according to the setting of this flag. Images with no exif data, a 'normal orientation' flag, or no orientation flag will be ignored.
Below the transformation buttons there is a means of specifying the destination of the transformed files.
If Use save path is NOT ticked then TranJPEG will put the transformed image into a directory (in the same location as the original image) named for the transformation, e.g. 'rotleft'. This is to prevent TranJPEG overwriting the original image.
If Use save path is ticked then it is possible to specify the directory in which the transformed images are to be placed. This directory can be set in two ways.
At the foot of the window is a button Settings..., which will open a further window allowing further options to be set. This is described in the next section.
At the bottom right of the control window is the Process button. Clicking SELECT on this will start the batch process off. Assuming there are some JPEG files in the queue, the control window will close, and the status window will open. This is shown below.
Clicking 'Settings' in the control window will open a new dialogue and reveal more options.
The transpose transformation has no restrictions regarding image dimensions. The other transformations operate rather oddly if the image dimensions are not a multiple of the iMCU size (usually 8 or 16 pixels), because they can only transform complete blocks of DCT coefficient data in the desired way.
jpegtran's default behavior when transforming an odd-size image is designed to preserve exact reversibility and mathematical consistency of the transformation set. As stated, transpose is able to flip the entire image area. Horizontal mirroring leaves any partial iMCU column at the right edge untouched, but is able to flip all rows of the image. Similarly, vertical mirroring leaves any partial iMCU row at the bottom edge untouched, but is able to flip all columns. The other transforms can be built up as sequences of transpose and flip operations; for consistency, their actions on edge pixels are defined to be the same as the end result of the corresponding transpose-and-flip sequence.
For practical use, you may prefer to discard any untransformable edge pixels rather than having a strange-looking strip along the right and/or bottom edges of a transformed image.
Neither TranJPEG nor jpegtran will modify the exif data in any other way. This means, for example, that the orientation data will remain the same. If the rotated image is then viewed in software that uses the orientation data, then it may rotate the image again (but see below under 'Write back orientation'). The thumbnail, if present, will still show the image in its original orientation.
When the Process button is clicked, assuming there are some JPEG files in the queue, the control window will close, and the status window will open. This is shown below.
There are four display fields which show the progress of the processing. The total number of files to process, and the position in the queue of the current file are shown. The filename of the current file is also shown. There is also a field that shows the current operation being carried out.
The two buttons at the bottom allow some control over the taskwindow processing.
If there are more images waiting in the queue to be processed, TranJPEG will ask whether it should continue to process these remaining images, or abandon the whole process.
All the screen shots in these pages were obtained using Snapper, a versatile screen capture application.
Snapper is available from http://www.chris-johnson.org.uk/software/snap.html
All communication about TranJPEG should be directed to Chris Johnson (Email:chris@chris-johnson.org.uk). Suggestions for new features are always welcome.
Chris Johnson's web site is at http://www.chris-johnson.org.uk/index.html, with his RISC OS software at http://www.chris-johnson.org.uk/software/index.html.
This document last modified on 5 Sept 2013
The TranJPEG front-end is © Chris Johnson, 2013