pdfwiz


Namepdfwiz JSON
Version 1.0.1 PyPI version JSON
download
home_pageNone
SummaryA lightweight CLI utility for manipulating PDFS.
upload_time2025-07-17 01:25:38
maintainerNone
docs_urlNone
authorNone
requires_pythonNone
licenseNone
keywords pdf
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pdf-tool

A lightweight CLI utility for manipulating PDFs.

## Features

- Merge two PDFs

- Rotate selected pages

- Reverse page order

- Delete pages

- Operate on specific pages or ranges

- In-place or save as new file

- Simple and intuitive CLI with helpful options

## Installation

### Option 1 — Install from PyPI (recommended)

```bash
pip install pdf-tool
```

### Option 2 — Install from source

```bash
git clone https://github.com/kavehfayyazi/pdf-tool.git
cd pdf-tool
pip install --user .
# or 
python3 -m pip install --user .
```

If `pdf-tool` is not found after install, make sure the appropriate scripts folder is in your `PATH`:

- macOS/Linux: `~/.local/bin`

- Windows: `%APPDATA%\Python\Scripts`

See [Troubleshooting](#troubleshooting) below for more details.

## Updating & Uninstalling

### Update to the latest version

If you installed from PyPI:

```bash
pip install --upgrade --user pdf-tool
# or
python3 -m pip install --upgrade --user pdf-tool
```

If you installed from source:

```bash
cd pdf-tool
git pull origin main
pip install --user .
# or
python3 -m pip install --user .
```

### Uninstall

```bash
pip uninstall pdf-tool
# or
python3 -m pip uninstall pdf-tool
```

## Usage

```bash 
pdf-tool <command> [options]
```

### Available commands:

| Command | Description |
| :--- | :---: |
| `merge` | Merge two PDFs |
| `rotate` | Rotate pages |
| `reverse` | Reverse page order |
| `delete` | Delete selected pages |

### Example:

```bash
pdf-tool merge file1.pdf file2.pdf -o merged.pdf
pdf-tool rotate file.pdf -p 1:3 -a 90 -o rotated.pdf
```

Run:

```bash
pdf-tool --help
pdf-tool <command> --help
```

for full options.

## Specifying Pages and Ranges

Many commands in `pdf-tool` allow you to operate on specific pages or ranges of pages in a PDF.

You can specify pages using:

- Individual page numbers (1-based, e.g. `1,3,5`)

- Ranges using a colon (e.g. `2:4` for pages 2, 3, and 4)

- Combinations of both

### Examples

| Input | Expanded Pages |
| :--- | :---: |
| `all` | All pages in the document (default) |
| `1,3,5` | Pages 1, 3, and 5 |
| `2:4` | Pages 2, 3, and 4 |
| `1,3:5,7` | Pages 1, 3, 4, 5, and 7 |

## Contributing

1. **Fork** this repository.

2. **Clone** your fork locally:

    ```bash
    git clone https://github.com/<your-username>/pdf-tool.git
    cd pdf-tool
    ```

3. **Create** a new branch:

    ```bash
    git checkout -b feature/your-feature
    ```

4. **Commit** your changes:

    ```bash
    git commit -m "Add feature-name."
    ```

5. **Push** to the branch

    ```bash
    git push origin feature/feature-name
    ```

6. **Open** a pull request.

## Troubleshooting

**Command not found?**

Your Python "scripts" folder may not be in your PATH.

- **macOS/Linux**:

    Add to your shell config (`~/.bashrc` or `~/.zshrc`):

    ```bash
    export PATH="$HOME/.local/bin:$PATH"
    ```
- **Windows**:

    Add `%APPDATA%\Python\Scripts` to your User PATH via System &rarr; Environment Variables.

Then restart your terminal and try `pdf-tool --help` again.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Contact

- Creator: kavehfayyazi
- Email: [kfayyazi@andrew.cmu.edu](mailto:kfayyazi@andrew.cmu.edu)
- Github: [@kavehfayyazi](https://github.com/kavehfayyazi)

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "pdfwiz",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "pdf",
    "author": null,
    "author_email": "Kaveh Fayyazi <kfayyazi@andrew.cmu.edu>",
    "download_url": "https://files.pythonhosted.org/packages/c7/ce/991d67eac2786ec404f135965f9ab73be19643f883e9417c4b0ddbe058ac/pdfwiz-1.0.1.tar.gz",
    "platform": null,
    "description": "# pdf-tool\n\nA lightweight CLI utility for manipulating PDFs.\n\n## Features\n\n- Merge two PDFs\n\n- Rotate selected pages\n\n- Reverse page order\n\n- Delete pages\n\n- Operate on specific pages or ranges\n\n- In-place or save as new file\n\n- Simple and intuitive CLI with helpful options\n\n## Installation\n\n### Option 1 \u2014 Install from PyPI (recommended)\n\n```bash\npip install pdf-tool\n```\n\n### Option 2 \u2014 Install from source\n\n```bash\ngit clone https://github.com/kavehfayyazi/pdf-tool.git\ncd pdf-tool\npip install --user .\n# or \npython3 -m pip install --user .\n```\n\nIf `pdf-tool` is not found after install, make sure the appropriate scripts folder is in your `PATH`:\n\n- macOS/Linux: `~/.local/bin`\n\n- Windows: `%APPDATA%\\Python\\Scripts`\n\nSee [Troubleshooting](#troubleshooting) below for more details.\n\n## Updating & Uninstalling\n\n### Update to the latest version\n\nIf you installed from PyPI:\n\n```bash\npip install --upgrade --user pdf-tool\n# or\npython3 -m pip install --upgrade --user pdf-tool\n```\n\nIf you installed from source:\n\n```bash\ncd pdf-tool\ngit pull origin main\npip install --user .\n# or\npython3 -m pip install --user .\n```\n\n### Uninstall\n\n```bash\npip uninstall pdf-tool\n# or\npython3 -m pip uninstall pdf-tool\n```\n\n## Usage\n\n```bash \npdf-tool <command> [options]\n```\n\n### Available commands:\n\n| Command | Description |\n| :--- | :---: |\n| `merge` | Merge two PDFs |\n| `rotate` | Rotate pages |\n| `reverse` | Reverse page order |\n| `delete` | Delete selected pages |\n\n### Example:\n\n```bash\npdf-tool merge file1.pdf file2.pdf -o merged.pdf\npdf-tool rotate file.pdf -p 1:3 -a 90 -o rotated.pdf\n```\n\nRun:\n\n```bash\npdf-tool --help\npdf-tool <command> --help\n```\n\nfor full options.\n\n## Specifying Pages and Ranges\n\nMany commands in `pdf-tool` allow you to operate on specific pages or ranges of pages in a PDF.\n\nYou can specify pages using:\n\n- Individual page numbers (1-based, e.g. `1,3,5`)\n\n- Ranges using a colon (e.g. `2:4` for pages 2, 3, and 4)\n\n- Combinations of both\n\n### Examples\n\n| Input | Expanded Pages |\n| :--- | :---: |\n| `all` | All pages in the document (default) |\n| `1,3,5` | Pages 1, 3, and 5 |\n| `2:4` | Pages 2, 3, and 4 |\n| `1,3:5,7` | Pages 1, 3, 4, 5, and 7 |\n\n## Contributing\n\n1. **Fork** this repository.\n\n2. **Clone** your fork locally:\n\n    ```bash\n    git clone https://github.com/<your-username>/pdf-tool.git\n    cd pdf-tool\n    ```\n\n3. **Create** a new branch:\n\n    ```bash\n    git checkout -b feature/your-feature\n    ```\n\n4. **Commit** your changes:\n\n    ```bash\n    git commit -m \"Add feature-name.\"\n    ```\n\n5. **Push** to the branch\n\n    ```bash\n    git push origin feature/feature-name\n    ```\n\n6. **Open** a pull request.\n\n## Troubleshooting\n\n**Command not found?**\n\nYour Python \"scripts\" folder may not be in your PATH.\n\n- **macOS/Linux**:\n\n    Add to your shell config (`~/.bashrc` or `~/.zshrc`):\n\n    ```bash\n    export PATH=\"$HOME/.local/bin:$PATH\"\n    ```\n- **Windows**:\n\n    Add `%APPDATA%\\Python\\Scripts` to your User PATH via System &rarr; Environment Variables.\n\nThen restart your terminal and try `pdf-tool --help` again.\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## Contact\n\n- Creator: kavehfayyazi\n- Email: [kfayyazi@andrew.cmu.edu](mailto:kfayyazi@andrew.cmu.edu)\n- Github: [@kavehfayyazi](https://github.com/kavehfayyazi)\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "A lightweight CLI utility for manipulating PDFS.",
    "version": "1.0.1",
    "project_urls": null,
    "split_keywords": [
        "pdf"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "fdf6e38f2b26ca57ee09e5c58ca9a5bd26060e16f2a619e4ebba38c36094647e",
                "md5": "98a8301185ea7044f7cb1d312739a1a3",
                "sha256": "c004420e20a71310d906b1e883ba57f662071d3ae1393935b806f3c37ef5f394"
            },
            "downloads": -1,
            "filename": "pdfwiz-1.0.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "98a8301185ea7044f7cb1d312739a1a3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 3575,
            "upload_time": "2025-07-17T01:25:36",
            "upload_time_iso_8601": "2025-07-17T01:25:36.875744Z",
            "url": "https://files.pythonhosted.org/packages/fd/f6/e38f2b26ca57ee09e5c58ca9a5bd26060e16f2a619e4ebba38c36094647e/pdfwiz-1.0.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "c7ce991d67eac2786ec404f135965f9ab73be19643f883e9417c4b0ddbe058ac",
                "md5": "260babc4a1b1f10746e9661941fa0535",
                "sha256": "7d96f957bc431446e7ffc1e7329929bba8050c114565edc03a50f267df2135fd"
            },
            "downloads": -1,
            "filename": "pdfwiz-1.0.1.tar.gz",
            "has_sig": false,
            "md5_digest": "260babc4a1b1f10746e9661941fa0535",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 3386,
            "upload_time": "2025-07-17T01:25:38",
            "upload_time_iso_8601": "2025-07-17T01:25:38.920515Z",
            "url": "https://files.pythonhosted.org/packages/c7/ce/991d67eac2786ec404f135965f9ab73be19643f883e9417c4b0ddbe058ac/pdfwiz-1.0.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-07-17 01:25:38",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "pdfwiz"
}
        
Elapsed time: 1.28020s