You are here

Index print or contact sheet (with exif and raw support)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
Rate this item!

******** (*)Ubuntu users who upgraded to 14.x read the Linux note below *********

An indexprint or contactsheet is an image that traditionally contains the negative images of an entire roll of film. Photographers used such sheets to index prints or as a proof page to decide which prints to enlarge.

Indexprint is a very useful tool to show the contents of a folder, for web design projects and galleries, personal work, or just to have a record of any archive folder in your (external) hard drives. Indexprint let you easily preview and catalog groups of images by displaying a series of (small) images on a single page or multiple pages.

From version 3.20 on indexprint has the possibility to show the exif information 'date and time', 'iso', 'speed', and 'F-number' if exist otherwise 'no exif data' will be printed. With the latest version 3.31 also JPEG XR formats can be printed. From v4 on the interface has been rebuild and also some new features has been added.

The pictures below are samples how indexprint/contactsheet works. For the default indexprint I have defined only three pictures on a row and three rows. I also wanted the filename including the extension printed. As result all pictures are scaled and centered within there respective minipages.

Quick overview Indexprint V4.00r3 (v3.34 has no background and lettertype/color)
Preview/screenshot Indexprint v4 development (v3.34 has only one window)
Read and Save pagePage options page
Image options page.other page.
Extended options page.

Indexprint is the same program as contactsheet v2.xx (http://registry.gimp.org/node/120) but has his own GUI designed with Glade, v2.xx uses PF-widgets. Reason is that a few problems with v2.xx cannot be easily solved i.e. the small screen problem, choosing a mix of imagetypes and size/ratio. These problems are solved in this new version. V3.xx uses also tooltips, also not possible in v2.xx.

This updated version works with version 2.6/2.8 of The Gimp, several imagetypes are supported.
Updated versions are first published on my website at http://www.sullockenzlin.demon.nl --> GIMP.

Download and Installation

The Indexprint plugin is tested on Windows XP SP3 and Linux Ubuntu 12.04 LTS (both 32 bits).
Installation notes given here are for windows only. On Linux: don't forget to make indexprint.py executable.

Indexprint can also be installed with Gimp Extensions Pack: http://registry.gimp.org/node/27656

Installation Gimp v2.6 and Indexprint v3.34
See my website http://www.sullockenzlin.demon.nl --> GIMP for details.

Installation Gimp v2.8.x and Indexprint v3.34
Download from the file attachments:
-Indexprint v3.34.zip
-add glade Gimp-2.8_32bit.zip (needed also for Lineborder 2)

1. Unpack Indexprint v3.34.zip and copy all the files (including the directories) to the user plugin dir of The Gimp.
2. Unpack "add glade Gimp-2.8_32bit.zip" and copy all the files to the appropriate directories of The Gimp.
3. First time you start Indexprint an "error" can occur. Indexprint doesn't know the location of your images and the location where you want to install your indexprint.

For JPG XR, raw and ps/eps files and exif information you need also to download and install:
- UFRAW plugin v0.18 (window users: donot install 0.19.x it won't work, see the website of UFRaw)
- Ghostscript/ghostview,
- pyexiv2 (needs also Python2.7.2/2.7.3 installed),
- JPEG XR plugin (it is possible you get a .dll error, search the registry for it)

Installation Gimp v2.8.x and Indexprint V4.00r3
Installation same as v3.34 except download "Indexprint V4.00r3" instead of Indexprint v3.34.zip.
This version is the bleeding edge towards v4. See my website for more details what has changed.
This version should be now a stable release but.... this means that you should know your way around Linux or windows systems and that you should have an interest in tracking down bugs. Propably you don't find one;)

If Indexprint refuses to work start Gimp in a terminal screen (Linux) and watch the output. For windows user start cmd and type at the C:> prompt: gimp-2.8 > error.txt 2>&1. This will produce an error.txt file in the root dir which can be easily examined.

Changelog

Changelog can be found on my website http://www.sullockenzlin.demon.nl --> GIMP..

Note Windows 32/64 bits users

For some reason translations aren't working anymore on windows (bugzilla 574520); Linux users have no problem. Affects also Lineborder 2.

Bug: pyexiv2 should be installed. Reason known.

Windows 64 bits users will have trouble installing JPEGXR and UFRaw, 32 bits users don't have trouble. As far as I can see there are no 64 bits executables, no problem for Linux users.

Note Linux 32/64 bits users

Bug: pyexiv2 should be installed. Reason known.

(*)Ubuntu users with the new version 14.x libglade2-0 must be installed. It is not installed by default anymore.

GIMP Version: 
Code License: 

Comments

Always nice to know. Thanks for the information.

I made my script executable with chmod 755......... I just re did it with your command chmod og+x this ultimately did not make any visible difference.

then I opened gimp from the terminal. There was no errors reported in the terminal when gimp opened. but when I opened the Indexprint the following errors were given:

********************************************************************************************
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:100: Warning: unable to set property `xalign' of type `gfloat' from value of type `gchararray'
builder.add_from_file(UI_FILENAME)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton14_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton13_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton12_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton10_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton9_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton8_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton7_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton6_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton5_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton4_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton3_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton2_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_radiobutton4_group_changed'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_radiobutton3_group_changed'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_radiobutton2_group_changed'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_radiobutton1_group_changed'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_spinbutton1_change_value'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_combobox2_changed'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_entry1_activate'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_filechooserbutton2_file_set'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton8_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_filechooserbutton1_file_set'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_entry2_activate'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton7_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton6_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton5_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton4_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton3_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton2_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:103: RuntimeWarning: missing handler 'on_checkbutton1_toggled'
builder.connect_signals(self)
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:154: Warning: unable to set property `xalign' of type `gfloat' from value of type `gchararray'
self.dialog.show()
/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py:159: Warning: unable to set property `xalign' of type `gfloat' from value of type `gchararray'
gtk.main() # event loop
*******************************************************************************************

When I clicked the "ok" but to make it produce the IndexPrint it then gave the following errors:

*********************************************************************************************
Traceback (most recent call last):
File "/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py", line 195, in on_dialog1_response
self.docontactsheet()
File "/home/acreech/.gimp-2.6/plug-ins/indexprint/gui.py", line 320, in docontactsheet
select_part_of_filename)
File "/home/acreech/.gimp-2.6/plug-ins/indexprint/GenerateIndexprint.py", line 606, in contactsheet
Dump_Filename_list, Sorted_Images, part_select)
File "/home/acreech/.gimp-2.6/plug-ins/indexprint/GenerateIndexprint.py", line 123, in get_images
for dirpath, dirnames, filenames in os.walk(original_location.decode('mbcs'), topdown=True):
LookupError: unknown encoding: mbcs
*********************************************************************************************

I wish I could help more interpreting these errors, but I am at the beginning stages of learning Python and this is over my head.

For an answer look above. mbcs is the problem

Just added a version without mbcs decoding. It should now work.

Did you perform step 9?

9. copy "libglade-2.0-0.dll" into the Gimp's bin folder (http://ftp.acc.umu.se/pub/gnome/binaries/win32/libglade/2.6/ or search it on your system)

I had a similar problem to what you describe, until I added libglade to my GIMP bin folder.

That does not do anything for me. I was not sure that a .dll file would help in linux, because it does not use .dll files (as far as I know). Anyhow, yes I have done that step, but it seems to not have any effect on the script.

You're right, I was "thinking" Windows when I commented, my mistake.

Pages

Subscribe to Comments for "Index print or contact sheet (with exif and raw support)"