I have some trouble when printing to custom paper sizes. Currently, I want to print something to a 21cm x 21cm card. So, I created a document with this size in libre office and exported it to PDF. The PDF looks fine.

When I want to print the document, the printer dialog has no option for this paper size. If I choose Din A4 (also 21cm wide), strange things happen:

  • Acrobat Reader centers the document on an A4 sheet as it thinks it's printing to A4.
  • Okular aligns the top of the document with the top of the sheet. This would be fine and exactly what I want, but it also crops the upper part of the documents. It looks as if it puts the document top-aligned on the sheet and then erases everything outside a center-aligned box of the same size as the document size.

My current workaround is to create the document in A4 size, aligning the area to be printed to the top of the page. However, this looks odd when creating the document.

I saw that using the --custom option of the printing command may allow this, but I do not want to print the documents from the command line.

So, my question is:

  • How can I print documents of custom page sizes to paper sheets of the same custom size?
  • I saw paper sizes defined in my PPD file. Can I just edit it? Is there a convenient tool for this?

My printer is a brother L2340 laser printer with original cups drivers from brother. I'm running OpenSuse 13.2, cups is 1.5.4 if I'm correct.

3 Answers 3


According to : https://stackoverflow.com/a/3112256/544721 you need to add to your printer's file description four lines in appropriate places describing four properties of your page: PageSize, PageRegion, ImageableArea and PaperDimension.

Btw. Here is my try of adding description of S0929100 Cards roll to Dymo 450 LabelWriter: https://gist.github.com/gwpl/d6f90e41c5b07cd9f9262e4c6515037d , however it's still work in progress. Hopefully this will give you a hint, here is digest of mentioned gist with four lines - each should land in appropriate section of .ppd file:

*PageSize w144h252/S0929100 Cards - Appointment Name Badge 51x89 mm : "<</PageSize[144 252]/ImagingBBox null/cupsInteger0 0>>setpagedevice"
*PageRegion w144h252/S0929100 Cards - Appointment Name Badge 51x89 mm : "<</PageSize[144 252]/ImagingBBox null/cupsInteger0 0>>setpagedevice"
*ImageableArea w144h252/S0929100 Cards - Appointment Name Badge 51x89 mm : "0.00 4.32 141.12 235.44"
*PaperDimension w144h252/S0929100 Cards - Appointment Name Badge 51x89 mm : "144.00 252.00"
  • I just installed the latest version of HPLIP. How do I find out where the .ppd file is for the printer I configured? May 6, 2017 at 20:46
  • 1
    Once you installed a print queue named XYZ with a PPD, the respective PPD will be placed as /etc/cups/ppd/XYZ.ppd. Dec 18, 2018 at 21:48
  • Does the PPD need to be edited on the print server, or on the clients? Aug 20 at 8:58
  • Trial and error reveals that the PPD is on the server (client doesn't even have a /etc/cups directory). There's no need to restart the server, either - the newly-saved PPD is used for the next print request. Keep that in mind if editing in place! Aug 20 at 9:39

It's not strange at all that Acrobat Reader centers your 21x21 cm page on an A4 paper. Without a PostScript Printer Description file (PPD), which contains a description of a 21x21 cm page size, Acrobat Reader cannot select such a page size, so it uses its default value.

  1. To be able to actually print on a custom paper size, you need to also load that paper size into your printer. Plus, the printer needs to be able to transport the sheets of this specific size through its paper path. (For a 21x21 cm square sheet, some printers may already fail to do that, because their nip roller design may not be expecting such a "short" paper...)

  2. To be able to select that paper size in a print dialog, that size has to be added into the PPD, and you'll have to manually edit that PPD. How to accomplish that I answered in another question, over at StackOverflow:


If you're trying to print outside of the standard document length, for instance printing onto a roll.

Find your printer's PPD file (in /etc/cups/ppd/) and open in an editor. In the file, find the max height, width and custom page parameters, and edit these as follows.

  • The width parameter will be named or in order of width, height.
  • The max width parameter should stay the same or it will throw the printer's alignment off, but you can set the length to anything I believe.
  • Then your printer will not create length boundaries in page setup and will allow you to print in continuous loop with no margin.

Make sure your paper length is cut according to your page layout or it will simply spit out the rest of the roll. This was my first try at it and I accidentally changed the width parameters which were 712 I believe.

I would assume trying to change things like dpi may cause you to run into problems with the longevity of your product, and if the hardware does not support such settings it may simply not respond. Also you will notice that the printer will take longer to load the file. I do not know how maximum file size is handled.



Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.