Name | pdfmerge JSON |
Version |
1.0.0
JSON |
| download |
home_page | |
Summary | Command-line utility for merging, splicing, and rotating PDF documents. |
upload_time | 2023-06-05 12:33:00 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.8 |
license | MIT |
keywords |
pdf
merge
split
cli
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# pdfmerge
_Command-line utility for merging, splicing, and rotating PDF documents._
[![Build Status](https://img.shields.io/github/actions/workflow/status/metaist/pdfmerge/.github/workflows/ci.yaml?branch=main&style=for-the-badge)](https://github.com/metaist/pdfmerge/actions)
[![pdfmerge on PyPI](https://img.shields.io/pypi/v/pdfmerge.svg?color=blue&style=for-the-badge)](https://pypi.org/project/pdfmerge)
[![Supported Python versions](https://img.shields.io/pypi/pyversions/pdfmerge?style=for-the-badge)](https://pypi.org/project/pdfmerge)
[Changelog] - [Issues] - [Documentation]
[changelog]: https://github.com/metaist/pdfmerge/blob/main/CHANGELOG.md
[issues]: https://github.com/metaist/pdfmerge/issues
[documentation]: https://metaist.github.io/pdfmerge/
## Why?
I find myself merging bits of different PDFs fairly regularly and really wanted a simple CLI way to do it.
## Install
```bash
python -m pip install pdfmerge
```
## Usage
$ pdfmerge [-h] [--version] [-o FILE|--output FILE] [-p PASSWORD|--password PASSWORD] PATH[RULE[, RULE ...]] [PATH[RULE, ...]] ...]
- `-o`, `--output` output file (default: `output.pdf`).
**Must not be any of the input files.**
- `-p`, '--password` password for encrypted files (default: empty string).
- `PATH` a file, directory, or wildcard string (e.g., `file*.pdf`) of files
to merge.
- `RULE` an optional string indicating which pages to extract and rotate.
The syntax for each rule is:
[START][..][END][ROTATE]
Where `START` and `END` are positive (1-based) or negative page numbers and
`ROTATE` is one of `>`, `V`, or `<` indicating a clockwise rotation of
90, 180, 270 degrees, respectively.
## Command-line Example
$ pdfmerge -o out.pdf file1.pdf file2.pdf[3,3] file2.pdf[1V,2..-1] "other*.pdf[<]" "/path/pdf[1..4>,5]"
This example illustrates several features:
- specifying an output file (must not be any of the input files)
- merging multiple files, some more than once
- splicing parts of file using indices (1-based; negatives allowed)
- including the same page multiple times
- rotating a page or page range
- merging all the PDFs in a directory
[Read more about the options](https://metaist.github.io/pdfmerge/__main__.html)
# Python Module Usage
`pdfmerge` can also be imported into python scripts.
```python
from pdfmerge import pdfmerge
pdfmerge(["pdf-1.pdf", "pdf-2.pdf[2>]"], "output.pdf")
```
## License
[MIT License](https://github.com/metaist/pypdf/blob/main/LICENSE.md)
[ci-image]: https://travis-ci.org/metaist/pdfmerge.png?branch=master
[ci-status]: http://travis-ci.org/metaist/pdfmerge
[gh-code]: https://github.com/metaist/pdfmerge/zipball/master
[gh-issues]: https://github.com/metaist/pdfmerge/issues
[gh-issues-all]: https://github.com/metaist/pdfmerge/issues/search?q=
[gh-pdfmerge]: https://github.com/metaist/pdfmerge/blob/master/pdfmerge.py
[gh-setup]: https://github.com/metaist/pdfmerge/blob/master/releases/pdfmerge-latest-setup.exe
[osi-mit]: http://opensource.org/licenses/MIT
[pypdf]: https://pypi.python.org/pypi/pyPdf
Raw data
{
"_id": null,
"home_page": "",
"name": "pdfmerge",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "",
"keywords": "pdf,merge,split,cli",
"author": "",
"author_email": "Metaist LLC <metaist@metaist.com>",
"download_url": "https://files.pythonhosted.org/packages/55/50/e9751e29937fb5470fe874547c0d81c02defe8b0c3463255423772562332/pdfmerge-1.0.0.tar.gz",
"platform": null,
"description": "# pdfmerge\n\n_Command-line utility for merging, splicing, and rotating PDF documents._\n\n[![Build Status](https://img.shields.io/github/actions/workflow/status/metaist/pdfmerge/.github/workflows/ci.yaml?branch=main&style=for-the-badge)](https://github.com/metaist/pdfmerge/actions)\n[![pdfmerge on PyPI](https://img.shields.io/pypi/v/pdfmerge.svg?color=blue&style=for-the-badge)](https://pypi.org/project/pdfmerge)\n[![Supported Python versions](https://img.shields.io/pypi/pyversions/pdfmerge?style=for-the-badge)](https://pypi.org/project/pdfmerge)\n\n[Changelog] - [Issues] - [Documentation]\n\n[changelog]: https://github.com/metaist/pdfmerge/blob/main/CHANGELOG.md\n[issues]: https://github.com/metaist/pdfmerge/issues\n[documentation]: https://metaist.github.io/pdfmerge/\n\n## Why?\n\nI find myself merging bits of different PDFs fairly regularly and really wanted a simple CLI way to do it.\n\n## Install\n\n```bash\npython -m pip install pdfmerge\n```\n\n## Usage\n\n $ pdfmerge [-h] [--version] [-o FILE|--output FILE] [-p PASSWORD|--password PASSWORD] PATH[RULE[, RULE ...]] [PATH[RULE, ...]] ...]\n\n- `-o`, `--output` output file (default: `output.pdf`).\n **Must not be any of the input files.**\n- `-p`, '--password` password for encrypted files (default: empty string).\n- `PATH` a file, directory, or wildcard string (e.g., `file*.pdf`) of files\n to merge.\n- `RULE` an optional string indicating which pages to extract and rotate.\n The syntax for each rule is:\n\n [START][..][END][ROTATE]\n\n Where `START` and `END` are positive (1-based) or negative page numbers and\n `ROTATE` is one of `>`, `V`, or `<` indicating a clockwise rotation of\n 90, 180, 270 degrees, respectively.\n\n## Command-line Example\n\n $ pdfmerge -o out.pdf file1.pdf file2.pdf[3,3] file2.pdf[1V,2..-1] \"other*.pdf[<]\" \"/path/pdf[1..4>,5]\"\n\nThis example illustrates several features:\n\n- specifying an output file (must not be any of the input files)\n- merging multiple files, some more than once\n- splicing parts of file using indices (1-based; negatives allowed)\n- including the same page multiple times\n- rotating a page or page range\n- merging all the PDFs in a directory\n\n[Read more about the options](https://metaist.github.io/pdfmerge/__main__.html)\n\n# Python Module Usage\n\n`pdfmerge` can also be imported into python scripts.\n\n```python\nfrom pdfmerge import pdfmerge\npdfmerge([\"pdf-1.pdf\", \"pdf-2.pdf[2>]\"], \"output.pdf\")\n```\n\n## License\n\n[MIT License](https://github.com/metaist/pypdf/blob/main/LICENSE.md)\n\n[ci-image]: https://travis-ci.org/metaist/pdfmerge.png?branch=master\n[ci-status]: http://travis-ci.org/metaist/pdfmerge\n[gh-code]: https://github.com/metaist/pdfmerge/zipball/master\n[gh-issues]: https://github.com/metaist/pdfmerge/issues\n[gh-issues-all]: https://github.com/metaist/pdfmerge/issues/search?q=\n[gh-pdfmerge]: https://github.com/metaist/pdfmerge/blob/master/pdfmerge.py\n[gh-setup]: https://github.com/metaist/pdfmerge/blob/master/releases/pdfmerge-latest-setup.exe\n[osi-mit]: http://opensource.org/licenses/MIT\n[pypdf]: https://pypi.python.org/pypi/pyPdf\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Command-line utility for merging, splicing, and rotating PDF documents.",
"version": "1.0.0",
"project_urls": {
"Changelog": "https://github.com/metaist/pdfmerge/blob/main/CHANGELOG.md",
"Documentation": "https://metaist.github.io/pdfmerge/",
"Homepage": "https://github.com/metaist/pdfmerge",
"Repository": "https://github.com/metaist/pdfmerge.git"
},
"split_keywords": [
"pdf",
"merge",
"split",
"cli"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "fb2844abc95682aee12ca3fc4672e9a01005770c96e5aeb8a10ddbcee9240433",
"md5": "6db0c0489b677e7654bdd74a8946c7dd",
"sha256": "eca68c41af5cb89d78727932994ae6ef5f858f9e5459509300adf93d726e9e8e"
},
"downloads": -1,
"filename": "pdfmerge-1.0.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "6db0c0489b677e7654bdd74a8946c7dd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 8252,
"upload_time": "2023-06-05T12:32:58",
"upload_time_iso_8601": "2023-06-05T12:32:58.622557Z",
"url": "https://files.pythonhosted.org/packages/fb/28/44abc95682aee12ca3fc4672e9a01005770c96e5aeb8a10ddbcee9240433/pdfmerge-1.0.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5550e9751e29937fb5470fe874547c0d81c02defe8b0c3463255423772562332",
"md5": "438597c054dcb3cd2aecdd2703d9591f",
"sha256": "5641742b4d6c4512dd6459282f45de6e7ac8c8374bf7404809f050d5fa24eefd"
},
"downloads": -1,
"filename": "pdfmerge-1.0.0.tar.gz",
"has_sig": false,
"md5_digest": "438597c054dcb3cd2aecdd2703d9591f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 8527,
"upload_time": "2023-06-05T12:33:00",
"upload_time_iso_8601": "2023-06-05T12:33:00.275497Z",
"url": "https://files.pythonhosted.org/packages/55/50/e9751e29937fb5470fe874547c0d81c02defe8b0c3463255423772562332/pdfmerge-1.0.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-06-05 12:33:00",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "metaist",
"github_project": "pdfmerge",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "pdfmerge"
}