Site logo,

Download & install GRIP


GRIP is available here free for you to use. Please mention when describing it or copying it.

 Compiled version

All software contains bugs, even if, we hope, they are only extremely subtle ones. The author has tested this software to the best of his abilities to ensure that it is generally fit for its purpose of processing and measuring digital photographs.

The author makes absolutely no claims and gives no guarantees whatsoever as to the accuracy of any output from this software.

Anyone making decisions based on any output from this software has a responsibility to first convince themselves of the appropriateness of so doing. They should test the software for themselves and understand how it works, sufficiently for their needs. Source code and explanatory documentation are available for that purpose.


Requires Java 7 or later Run-time Environment (JRE) which can be downloaded free from

If you try to run GRIP in an earlier JRE than version 7 you will get an error message similar to this in the command window:

Exception in thread "main" java.lang.UnsupportedClassVersionError: Bad version number in .class file

The solution for this is to upgrade your installed Java to version 7 or later.


 Upgrade only

If you have downloaded a previous version of GRIP, you do not need to download the 3rd party jar files again, you can simply download the new version of the single file GRIP.jar here (1.2 Mbytes).


 Directory structure

This diagram shows how the GRIP directory should look for running the application.

Directory structure for installed GRIP

With the files arranged as shown above, the commands to launch GRIP (as in the file run.bat) are:

set classpath=grip.jar;jai_imageio.jar;clibwrapper_jiio.jar;jrawio-1.0.RC5.jar
start java -Xms768m -Xmx1024m net.grelf.grip.GRIP

 Non-Windows systems

On platforms other than Windows the first of the two lines in run.bat should be modified so that semicolons (;) become colons (:).

Apple Mac

I do not have a Mac system but two of my users have sent me information about how they got GRIP running on their Macs.

Dustin's method

Thanks to Dustin in Miami, Florida:

I created a simple shell script "" and placed it into the same dir as run.bat. Its contents contain:


DIR=$(dirname "$0")
(cd $DIR; export
java -Xms768m -Xmx1024m net.grelf.grip.GRIP)

This allows the user to put the grip_run directory anywhere on the system without hardcoding the paths. All the user will need to do is open up the terminal program which is located in the Applications/Utilities folder and change to the grip_run directory

cd ~/Downloads/grip_run

(or wherever it got moved after it was downloaded, "~/Applications/grip" is where I moved mine) and change the permissions to be executable:

chmod +x

Once that is done all the user needs to do is right click on and "open with" terminal. They will have an option to always open this with terminal and if selected all they will have to do is right click and then open.

This seems like a lot, but the other alternative would be to create an "app" which is simple enough, it just would require the user to put the application in a specific directory each time (like ~/Applications). This would allow the user to just double click on it like any other app.

Paul's method

Thanks also to Paul in Leeds, UK, who used this method on his Mac running Mountain Lion (10.8.2):

1. Create a Launcher App

On a Mac it is possible to execute GRIP by double clicking on the 'grip.jar' file. The big problem with this method, is that although it executes the program, it does not carry with it any of the command information such as the correct allocation of memory, which renders GRIP virtually useless when attempting to load an image of any reasonable size.

A way to get around this is to create an executable application using a piece of freeware called 'Platypus' which runs a shell script telling GRIP to execute and exactly how much memory it should allocate to itself. Here is how to do this:

  1. Download Platypus from here:
  2. Run Platypus and in the section that says 'Script Path' click 'new'. This will open a Terminal style window. Delete the little bit of text that says echo 'Hello, World' but leave all other text remaining.
  3. Copy and paste the following command:
    cd ~/desktop/grip_run 
    java -Xms768m -Xmx1024m -jar grip.jar

    (Please remember to replace 'desktop' with the location of where your grip_run folder is stored.)
  4. Click Save.
  5. In the 'App Name' section give your app a name. I called mine 'Grip Launcher' for ease.
  6. Click create and save it in the grip_run folder.
  7. Close Platypus. Now go to your grip_run folder and there should be your Grip file in there. Double click and hey presto, it launches GRIP successfully.
2. Enable Grip to open/save TIFF files

When attempting to save your image as a 16 bits per channel TIFF file, you may have been presented with one or both of the following error messages:

The reason for this is that, once again, the Mac has not been told where to look for the corresponding .jar files that enable your files to be saved in this format. Here is how to solve the problem:

  1. In finder, click Go>Go to folder
  2. In the search box type: /library/Java/extensions
  3. Open your grip_run folder, then highlight and copy the files entitled 'clibwrapper_jiio.jar' and 'jai_imageio.jar'
  4. Paste a copy of these files into the opened Java Extensions folder.
  5. Run GRIP (using your newly created app launcher) and you should now be able to open and save 16-bit TIFF files.
  6. If you are still presented with "File name does not have a suitable extension", just remember to add .tif to the end of the filename you are trying to save.

 64-bit systems

GRIP does work in 64-bit systems but it may at first appear not to do so. I have (Oct 2010) moved onto 64-bit Windows 7 and installed 64-bit Java. On this new platform GRIP kept failing with "Out of memory" errors. That can be corrected, as described on my trouble-shooting page.

 Help files and API

If you want to access the help files and the programmer's (API) reference ensure you unzip the other downloads as shown in the diagram. Here are the help files:

Download the help files here (2.4 Mbytes)

The API documentation files are available from my programmer's download page.


If you download my software it is yours to do with as you wish but I own the copyright of all of its Java source code. GRIP, being written in Java, is dependent upon Oracle's Java library. Information about the open source library and its licence is available here.

When discussing with others GRIP or your results from it, please mention

 Source code

If you are a developer wishing to modify or extend GRIP there is another page about the source code here.

Next page