Programster's Blog

Tutorials focusing on Linux, programming, and open-source

PDF Cheatsheet

PDF

As with all of my cheatsheets, this is just a dumping ground for as things come up.

Save Unlocked PDF

If you get a PDF that requires a password to unlock, you can use this command to save a version that won't need unlocking in future.

qpdf \
  --password=$PASSWORD \
  --decrypt $INPUT.pdf \
  $OUTPUT.pdf

This requires having installed qpdf with sudo apt-get install qpdf.

Create A PDF From A Series Of Images

The following command will create a PDF document where all the images are the same width.

convert -quality 100% -resize 629 \
  "path/to/image.png" -resize 629 \
  "path/to/image2.png" -resize 629 \
  output.pdf

If you want the images to not all be the same width, then remove the -resize 629. Also, all your images need to have the same DPI, otherwise it doesn't work.

Fixing Error Message

If you get the error message:

convert-im6.q16: attempt to perform an operation not allowed by the security policy `PDF' @ error/constitute.c/IsCoderAuthorized/408.

Then do the following. Edit your ImageMagick policy configuration:

editor /etc/ImageMagick-6/policy.xml

Add the following just before the final </policy> tag:

  <policy domain="coder" rights="read | write" pattern="PDF" />

E.g.

  <policy domain="coder" rights="none" pattern="PDF" />
  <policy domain="coder" rights="none" pattern="XPS" />
  <policy domain="coder" rights="read | write" pattern="PDF" />
</policymap>

It should now work!

References

Last updated: 19th August 2021
First published: 14th April 2019