rpdf

Crates.iorpdf
lib.rsrpdf
version0.1.3
sourcesrc
created_at2023-04-30 11:56:56.448498
updated_at2024-01-17 08:38:18.215924
descriptionPDF command-line utils written in Rust
homepage
repositoryhttps://github.com/jeertmans/rpdf
max_upload_size
id852716
size59,037
Jérome Eertmans (jeertmans)

documentation

README

rpdf

PDF command-line utils written in Rust.

rpdf makes working with PDF annotions super easy! It can merge annotations from multiple files, some show statistics (stats) or strip specific (or all) annotations.

Crates.io

  1. About
  2. CLI Reference
  3. Contributing

About

rpdf is a Rust binary that aims to provides an open source and straighforward command-line alternative to other tools such as PDF Annotator and others.

Disclaimer: rpdf is currently in an early stage, and does not implement many features. It was first developed for my own use, because I needed to merge annotations from PDFs I review with other people. Do not hesitate to propose new features if you feel they could be intersting!

Installation

You can install the latest version with cargo.

> cargo install rpdf

CLI Reference

The command line tool is pretty straighforward to use and is self-documented:

CLI

Anytime you need help for a command, you can use rpdf <COMMAND> --help, or -h for the short version.

Examples

Annotations statistics

You can count how many annotations your file contains:

statistics

And you can also do this per page:

statistics-per-page

Merge annotations

Say we have to files with the same content but different annotations:

statistics-two-files

You can merge the annotations from both files into one with the merge command, and verify that all the annotations are present in the final product:

merge

Strip annotations

If you want to remove some annotations from a PDF, you can do so with the strip command:

strip

By default, strip excludes Link annotations from the removal process. You can modifiy the behavior with the -e/--exclude parameter.

Contributing

Contributions are more than welcome! Please reach me via GitHub for any questions: Issues, Pull requests or Discussions.

Commit count: 25

cargo fmt