Blesmol / pfscf

Pathfinder Society Chronicle Filler
https://blesmol.github.io/pfscf/
MIT License
7 stars 3 forks source link

Add Mac instructions for extracting chronicle page #110

Closed tdhsmith closed 3 years ago

tdhsmith commented 3 years ago

These instructions use Preview (built-in Mac utility app) to quickly remove pages directly from the PDF without "printing".

tdhsmith commented 3 years ago

I have yet to run into an issue with it so far, but I've only tried it on 7 or 8 different PFS (2e) adventures. None of those were password-protected, just watermarked. Is the DRM identifiable? I don't do a lot of other PDF manipulation.

Blesmol commented 3 years ago

My experience with PDF permissions is unfortunately also not that good.

But if these instructions work with the macOS preview.app and scenario files directly downloaded from Paizo, then this is fine for me. After all, the PDF printer on Windows basically allows the same.

Regarding PDF permissions in general:

An overview of possible permission bits is available, e.g. at https://www.biopdf.com/guide/pdf_permissions.php

Below are the permission bits as set on a file from Paizo (scenario PFS2 #1-14):

permission bits: 101100110100
Bit  3: true (print(rev2), print quality(rev>=3))
Bit  4: false (modify other than controlled by bits 6,9,11)
Bit  5: true (extract(rev2), extract other than controlled by bit 10(rev>=3))
Bit  6: true (add or modify annotations)
Bit  9: true (fill in form fields(rev>=3)
Bit 10: true (extract(rev>=3))
Bit 11: false (modify(rev>=3))
Bit 12: true (print high-level(rev>=3))

According to my understanding this should not allow page extraction, and this is also what is displayed in the permissions overview in Acrobat Reader for this file. That is also the reason why so far I did not try to include functionality to extract the chronicle page directly from a paizo file (although that would by far be the most convenient solution for the user).

tdhsmith commented 3 years ago

Interesting, thanks for the reference materials!

Notably, Preview does require the "make a duplicate" step for any of this to work (you cannot manipulate the original file), so it may have more to do with how permissions and ownership are transferred onto derivative files, rather than bypassing the DRM directly..?