HowTo: Add artificial print bleed area to images

For our album "X marks the spot", I've encountered the problem that some images did not really have a lot of content free "space" around their edges. Unfortunately, this causes details to be cut off during printing, because it's necessary to have a so called "bleeds" to avoid white areas at the edge of the paper.

This tutorial explains a nice workaround to this problem...

Since I couldn't simply go out and re-make the affected photos, I've found a way to add a virtual bleed border around the image using simple graphic editing methods. In the tutorial, I'll explain how the principle works, but for all lazy ones of you (like me), I've written a GIMP plugin in Python-Fu, called "cheap print bleed".

Here's an example of the applied effect:


The general principle is quite simple:

  1. Resize the image canvas to whatever size you finally need
  2. Copy the original image layer
  3. Resize the layer copy to be exactly 2 pixels higher/wider than before
  4. Lower the layer copy
  5. Repeat steps 2-4 until the whole area is filled
  6. Merge visible layers

Easy, but it sucks to do it manually - especially for high resolutions where you need to fill e.g. 100 (!) pixels on each side.

Using the plugin

First of all, download and extract the "cheap print bleed plugin" plugin to GIMP's plugin folder.
This can be per-user (e.g. "~/.gimp-2.6/plug-ins/") or system-wide (e.g. "/usr/lib/gimp-2.6/plug-ins/").
Of course, adapt GIMP's version number accordingly.

If you did it correctly, you should see a new menu item in GIMP's "Image" menu, called "Cheap print bleed". If the item is there, proceed:

  1. Open the image in GIMP
  2. Select the whole image: Select > All (Strg+A)
  3. Add a border to the selection: Select > Border > 2 pixels
    (NO feather border / NO lock selection to image edges)
  4. Copy/paste this selection to a new layer
  5. Turn all layers except this new one invisible
  6. Apply the "cheap print bleed" effect: Image > Cheap print bleed

It might be necessary to run "Image > Autocrop image" after applying the bleed effect, due to transparent pixel leftovers.


Here are 2 examples with their original version - and after adding a virtual print bleed:

Original With bleed
As you can see in the first example, the heads of the two people in the background would have been cut off without the bleed area.
In the second image, the corpus of the violin would also have been cut off in the original.

Error on GIMP 2.6.12


Your plugin seems to the the only existing that does this task. Thanks!

However I'm getting this erro on GIMP 2.6.12:

Traceback (most recent call last):
File "/usr/lib/gimp/2.0/python/", line 692, in response
dialog.res = run_script(params)
File "/usr/lib/gimp/2.0/python/", line 353, in run_script
return apply(function, params)
File "/home/pessoa/.gimp-2.6/plug-ins/", line 79, in zoomcopy
TypeError: integer argument expected, got float

Do you have any hint on what may be wrong?

peter_b's picture


For some unknown reason, Gimp v2.6 provided the "zoom_pixels" parameter as floating point number. I am now casting that variable to an Integer type (which it should be anyway). It works now again! :)

Please download the updated version of the plugin:


Note to future patrons of this site...

If you are attempting to use this plug-in on a Windows version of GIMP, you will need to open the .py file in Notepad and locate the following lines:

filename = '/tmp/gimp_plugin_cheapprintbleed.log'

Put a '#' in front of that line.

#filename = r"C:\gimp_plugin_cheapprintbleed.log"

Remove the '#' in front of that line.

He has this notated in the .py file, but please benefit from my hours of troubleshooting a missing registration and then stumbling right over this like a root sticking out of the ground! lol.

Thanks for the great plug-in!


Also don't use GIMP portable...

Yeah, it doesn't work... I think because Python has to be installed before GIMP is installed. Portable doesn't allow for this.

peter_b's picture

I'll go check...

Happy to hear that this plugin could be useful for you :)
I'm running GIMP v2.6.11, but I'll try to reproduce your error and see what I can do :)