# `clip` Clip page content to a rectangle ## Usage > pdftl `` `clip` `...` `[preview]` `output` `` `[]` ## Details Clip a page to a rectangle defined by offsets from the page edges, or in other ways. The `clip` operation is identical to `crop` in terms of specifying the rectangle, except that instead of cropping to the rectangle (by changing the page boundaries), all page content is enclosed in a clipping rectangle. The effect is then that any content outside that rectangle is hidden, while the page boundaries are unchanged. To find out how to specify the rectangle, read the help for `crop`. Or see below: One format is `page-range(left[,top[,right[,bottom]]])`. Here, `left`, `top` etc. are offsets from the current page boundaries; positive numbers move inwards towards the center of the page. If you omit some of these, the rest are filled in in the obvious way. Units can be `pt` (points), `in` (inches), `mm`, `cm` or `%` (a percentage). If omitted, the default unit is `pt`. For example, `1-end(10pt,20pt,10pt,20pt)` removes a margin of 10 points from the left and right, and 20 points from the top and bottom. Alternatively, specify `1-3(a4)` to crop pages `1-3` to size a4. Many paper size names are allowed, see `data/paper_sizes.py`. For landscape add the suffix `_l` to the paper size, e.g., `a4_l`. You can also clip to the visible content using `fit`: - `1-end(fit)` or simply '(fit)' clips each page to its content. - `1-10(fit-group)` clips pages 1-10 to the union of their content. - `1-10(fit-group=2-3)` clips pages 1-10 to the union of the contents of pages 2-3. Or use `abs` to specify an exact bounding box `x0,y0,x1,y1` where `x0,y0` are the coordinates of the bottom left corner and `x1,y1` the coordinates of the upper right corner: - `1-10(abs,100,150,400,500)` clips pages 1-10 to the absolutely positioned box with corners at (100pt,150pt) and (400pt,500pt) You can also include a comma-separated list of up to 4 dimensions to expand the clip rectangle: `(fit,1cm)` or `(fit-group, 10,0,20,50)`. When using `abs` you can also give units or percentages, or just numbers to default to `pt`. This uses the PDF page coordinate system, so x-values increase to the right and y-values increase upwards. Often, but not always, the origin (0,0) is at the bottom left corner of the page (this depends on the page MediaBox, as shown by `dump_data`, for example.) If the `preview` keyword is given, a rectangle will be drawn instead of clipping. ## Examples > Clip to 1cm from the sides and 2cm from the top and bottom of all pages: ``` pdftl in.pdf clip '1-end(1cm,2cm)' output out.pdf ``` > Clip every page to its visible content minus 10pt ``` pdftl in.pdf clip '1-end(fit,-10pt)' output clean.pdf ``` > Preview effect of clipping the even-numbered pages between pages 2 and 8 to A5 ``` pdftl in.pdf clip '2-8even(a5)' preview output out.pdf ``` **Tags**: in_place, geometry *Source: pdftl.operations.rebox* *Read online: [https://pdftl.readthedocs.io/en/stable/operations/clip.html](https://pdftl.readthedocs.io/en/stable/operations/clip.html)* *Type: Operation*