Printing out photos from Linux onto Epson 4×6 Photo Paper is certainly no walk in the park. First, you have to get your graphics program to talk to your printer. To make a long story short I use GIMP. It's a bit complex but it is also insanely powerful. The main problem I face in printing from GIMP has to do with the paper I use, the Epson 4×6 paper. This paper isn't actually 4×6. It is larger, with a border around all four sides that is perforated and can be removed. While the correct paper size is built into GIMP (the author of GIMP-Print apparently uses the same paper), GIMP itself doesn't seem to really understand the idea of 'border'. Instead it will try to scale the image to the size of the full print sheet, including the border. The result is that parts of the picture are printed in the border area and lost when the borders are removed.
There are several steps needed to fix this problem. The first step is to get the picture closer to 4×6. To do this go to the picture you want to print and then Right Click – Image – Scale Image. The bottom part of the dialog is labeled "Print Size & Display Unit". Change the units in the bottom area to inches (in). Now here is the slightly tricky part. The "new Width" and Height entries need to be set to 4 x 6 or 6 x 4. Which to choose depends on what your longest axis is. So, for example, in my pictures the width is 1600 pixels and the height is 1200 pixels. Therefore I set the width of the picture (in the "Print Size & Display Unit" section) to 6 inches. This causes the height to become 4.5 inches. Now I know that I need to remove 0.5 inches from the height of the picture in order to get it to fit into my 4×6 print.
To get rid of the 0.5 inches of height it is possible to resize the canvas but using that function has caused me enough headaches that I avoid it. What I do instead is use the crop tool. This is one of the icons on the main GIMP control panel. Once I select it (just hover over the icons until you see one called crop) I go back to my picture, left click and drag a box over a part of the picture. It doesn't really matter where you draw the box. This will cause the "Crop & Resize Information" dialog to come up. This dialog is used to create the box that will cover the part of the picture that will be kept. The first thing I do is change both of the unit selections to inches (in). In this case I am only cutting height, not width, so I change the X origin to be zero. I then set the Y origin to be 0.25. The reason is that I need to cut 0.5 inches from the picture and I decided to do it by removing 0.25 inches from both the top and the bottom of the picture. I then set the width to 6 inches and the height to 4 inches. The result is a 6×4 box that starts at X=0 and Y=0.25. I then press crop. Voila, one 4×6 picture.
The next step is to print the picture. Select the picture and then Right Click – File – Print. The media size I use is 'Epson 4×6 Photo Paper'. The media type is "Photo Quality Inkjet Paper". I experimented with other paper types and found that this one gives me the best results. Resolution is up to you. Just for kicks I printed out a picture at 720 DPI Highest Quality, 1440×720 DPI Highest Quality & 2800×720 DPI. The 720 DPI Highest Quality is pretty good but 1440×720 is noticeably better. The 2800×720 is better than 1440×720 but I don't know that I could tell the difference if I didn't put them next to each other. My general rule is that if I'm going to put the picture on display I will use 2800 and if I'm going to put it into an album then I will use 1440.
The next trick is to get the 4×6 picture positioned correctly on the paper. You can see the picture and its position on the paper in the print preview on the upper left hand side of the print dialog. Remember, the paper is bigger than the picture and GIMP will try to scale the picture to take up as much paper as possible. So you need to press the big "Use Original Image Size" button, this will stop GIMP from resizing the picture. Once you press this button you will have a 4×6 picture and the challenge now is to position it on the paper so that it doesn't cross the borders.
Assuming you put your paper into the printer in the way Epson recommends then the front border of the paper is 0.25 inches and the side borders are both 0.25 inches. However when I try to set these values directly into the print dialog's Position they get reset! The only way I can figure out how to get things working is to use the mouse to move around the image of the photo inside of the print preview. The trick is to right click the mouse (this causes the picture to move in finer steps then if you left click) and simultaneously press shift (this only allows the picture to move either vertically or horizontally depending on where you are dragging the mouse) on the picture and drag it in the direction the arrow is pointing (there is a white arrow but it might be hard to see if your picture is dark).
If the arrow is pointing up then drag the picture up/down until 'Top' reads 0.25 and then drag the picture right/left until 'Left' reads 0.25.
If the arrow is pointing right then drag the picture up/down until 'Top' reads 0.25 and then drag the picture right/left until 'Right Border' reads 0.25.
At this point you can either press 'Print and Save Settings' if you are going to re-use the same paper/quality or just 'Print'.
Great howto. However, you never mentioned what “Printer Model” you were using…
Does it matter? The instructions should work with any paper using Epson Photo paper so long as GIMP has been configured to talk to it. But in my case I am using a Epson Stylus Photo 820