{
    "content": [
        {
            "type": "text",
            "text": "# pnmcut (info)\n\n## NAME\n\npnmcut - cut a rectangle out of a portable anymap\n\n## SYNOPSIS\n\npnmcut [-left leftcol] [-right rightcol] [-top toprow] [-bottom bottom-\nrow] [-width width] [-height height] [-pad] [-verbose] [ left top width\nheight ] [pnmfile]\nAll options may be abbreviated to the shortest unique prefix.\n\n## DESCRIPTION\n\nReads  a  PBM, PGM, or PPM image as input.  Extracts the specified rec-\ntangle, and produces the same kind of image as output.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **OPTIONS** (3 subsections)\n- **SEE ALSO**\n- **AUTHOR**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "pnmcut",
        "section": "",
        "mode": "info",
        "summary": "pnmcut - cut a rectangle out of a portable anymap",
        "synopsis": "pnmcut [-left leftcol] [-right rightcol] [-top toprow] [-bottom bottom-\nrow] [-width width] [-height height] [-pad] [-verbose] [ left top width\nheight ] [pnmfile]\nAll options may be abbreviated to the shortest unique prefix.",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "The row number of the bottom-most row to be in the output, num- bered the same as for -top. -width The number of columns to be in the output. Must be positive."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "The number of rows to be in the output. Must be positive. -pad If the rectangle you specify is not entirely within the input image, pnmcut fails unless you also specify -pad. In that case, it pads the output with black up to the edges you specify. You can use this option if you need to have an image of certain di- mensions and have an image of arbitrary dimensions. pnmpad can also fill an image out to a specified dimension, and gives you more explicit control over the padding."
            },
            {
                "flag": "",
                "long": null,
                "arg": null,
                "description": "Print information about the processing to Standard Error."
            }
        ],
        "examples": [],
        "see_also": [
            {
                "name": "pnmcrop",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/pnmcrop/1/json"
            },
            {
                "name": "pnmpad",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/pnmpad/1/json"
            },
            {
                "name": "pnmcat",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/pnmcat/1/json"
            },
            {
                "name": "pgmslice",
                "section": "1",
                "url": "https://www.chedong.com/phpMan.php/man/pgmslice/1/json"
            },
            {
                "name": "pnm",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/pnm/5/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 31,
                "subsections": []
            },
            {
                "name": "OPTIONS",
                "lines": 13,
                "subsections": [
                    {
                        "name": "-bottom",
                        "lines": 5
                    },
                    {
                        "name": "-height",
                        "lines": 11
                    },
                    {
                        "name": "-verbose",
                        "lines": 2
                    }
                ]
            },
            {
                "name": "SEE ALSO",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "AUTHOR",
                "lines": 3,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "pnmcut - cut a rectangle out of a portable anymap\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "pnmcut [-left leftcol] [-right rightcol] [-top toprow] [-bottom bottom-\nrow] [-width width] [-height height] [-pad] [-verbose] [ left top width\nheight ] [pnmfile]\n\nAll options may be abbreviated to the shortest unique prefix.\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "Reads  a  PBM, PGM, or PPM image as input.  Extracts the specified rec-\ntangle, and produces the same kind of image as output.\n\nThere are two ways to specify the rectangle to cut: arguments  and  op-\ntions.   Options  are easier to remember and read, more expressive, and\nallow you to use defaults.  Arguments were the only way  available  be-\nfore July 2000.\n\nIf you use both options and arguments, the two specifications get mixed\nin an unspecified way.\n\nTo use options, just code any mixture of the -left, -right, -top, -bot-\ntom, -width, and -height options.  What you don't specify defaults.  It\nis an error to overspecify, i.e. to specify all three of -left, -right,\nand -width or -top, -bottom, and -height.\n\nTo  use arguments, specify all four of the left, top, width, and height\narguments.  left and top have the same effect as specifying them as the\nargument  of  a  -left  or -top option, respectively.  width and height\nhave the same effect as specifying them as the argument of a -width  or\n-height  option, respectively, where they are positive.  Where they are\nnot positive, they have the same effect as specifying one less than the\nvalue  as  the  argument  to  a -right or -bottom option, respectively.\n(E.g.  width = 0 makes the cut go all the way to the right edge).   Be-\nfore July 2000, negative numbers were not allowed for width and height.\n\nInput  is  from Standard Input if you don't specify the input file pnm-\nfile.\n\nOutput is to Standard Output.\n",
                "subsections": []
            },
            "OPTIONS": {
                "content": "-left  The column number of the leftmost column to be  in  the  output.\nIf a nonnegative number, it refers to columns numbered from 0 at\nthe left, increasing to the right.  If negative,  it  refers  to\ncolumns numbered -1 at the right, decreasing to the left.\n\n-right The  column  number of the rightmost column to be in the output,\nnumbered the same as for -left.\n\n-top   The row number of the topmost row to be in  the  output.   If  a\nnonnegative number it refers to rows numbered from 0 at the top,\nincreasing downward.  If negative, it refers to columns numbered\n-1 at the bottom, decreasing upward.\n",
                "subsections": [
                    {
                        "name": "-bottom",
                        "content": "The  row number of the bottom-most row to be in the output, num-\nbered the same as for -top.\n\n-width The number of columns to be in the output.  Must be positive.\n"
                    },
                    {
                        "name": "-height",
                        "content": "The number of rows to be in the output.  Must be positive.\n\n-pad   If the rectangle you specify is not entirely  within  the  input\nimage, pnmcut fails unless you also specify -pad.  In that case,\nit pads the output with black up to the edges you specify.   You\ncan  use this option if you need to have an image of certain di-\nmensions and have an image of arbitrary dimensions.\n\npnmpad can also fill an image out to a specified dimension,  and\ngives you more explicit control over the padding.\n"
                    },
                    {
                        "name": "-verbose",
                        "content": "Print information about the processing to Standard Error.\n"
                    }
                ]
            },
            "SEE ALSO": {
                "content": "pnmcrop(1), pnmpad(1), pnmcat(1), pgmslice(1), pnm(5)\n",
                "subsections": []
            },
            "AUTHOR": {
                "content": "Copyright (C) 1989 by Jef Poskanzer.\n\n29 June 2000                        pnmcut(1)",
                "subsections": []
            }
        }
    }
}