Freitag, 23. April 2010

Applescript Droplet für MuPdfs pdfclean

Review PDFKey Pro

Kürzlich gab es bei MacUpdate das Programm PDFKey Pro zur Entfernung lästiger PDF-Restriktionen, die etwa das Kopieren von Text oder Drucken eines PDFs verhindern. Man darf jedoch PDF-Restriktionen bzw. Sicherheitseinstellungen nicht mit dem PDF-Passwort verwechseln. (Auch wenn der Name DPFKey lautet und der Text Unlock auf der Benutzeroberfläche von PDFKey Pro nahelegt, dass PDF-User-Passwöter entfernt werden, die das Öffnen / Betrachten verhindern können, wenn man das entsprechende Passwort nicht kennt.) Damit hat es allerdings nichts zu tun, sowie auch der alternative Ansatz weiter unten nicht.

screenshot-2010-04-23-23-54.jpg

Das heißt, wenn man das Besitzerpasswort nicht hat und die Datei nicht betrachtet werden kann, hat man keine Chance die Restriktionen weg zu bekommen.

(Die Lock-Funktion von PDFKey Pro allerdings setzt tatsächlich ein Eigentümer / Benutzerpasswort, mit dem Betrachter ohne Passwort ganz ausgesperrt werden. Etwas verwirrend, das Ganze.)

Die Demoversion von PDFKey entschlüsselt leider nur eine Seite, sodass man nur beschränkt testen kann, wie leistungsfähig die Software wirklich ist. Ich hatte den Eindruck, dass das Programm seine Arbeit gut macht. Ich habe kein PDF mit Restriktionen gefunden, die nicht entfernt werden konnten. Jedoch hatte ich bei verschiedenen PDFs das Problem, dass das neu angelegte, entschlüsselte PDF irgendwie umcodiert wurde und beim Kopieren von Text aus dem PDF komische Zeichen beim Einfügen im Zieldokument ankamen. Ob dies wie vermutet an einer Umcodierung liegt oder schon am ursprünglichen PDF, kann ich aber nicht sicher sagen. Sei es, wie es sei.

Ein Programm zum Entfernen von PDF-Restriktionen kann sehr nützlich sein. In der Regel wird es aber für die meisten Anwender so sein, dass man diese Art von Funktionalität nur ein paar Mal im Jahr braucht, wenn es hoch kommt. Und ob man sich dann ein Programm für 25 $ kaufen mag, ist sicher fraglich. Ab und an gibt es natürlich irgendwo eine Promoaktion oder ein Bundle, aber zum Vollpreis bin ich nicht an Board.

Do-it-yourself: PDF-Restriction-Cleaner Droplet

In MacUpdate-Forum hatte ein Benutzer darauf hingewiesen, dass man auch mit Hilfe von MuPDF, einer grob gesagt auf Ghostscript basierenden opensource PDF-Parsing-Library, die Restriktionen von PDFs entfernen könne. Und das stimmt auch.

Bei MuPDF für Mac OS X ist unter anderem das Kommandozeilenwerkzeugen pdfclean enthalten, dass genau diese Aufgabe erfüllt.

Hier noch ein vorher / nachher Bild eines mit pdfclean bearbeiteten PDFs:

restrictedpdf-2010-04-23-23-54.pngunrestrictedpdf-2010-04-23-23-54.png

Nach der Anwendung von pdfclean hat man die vollständigen Zugriffsrechte und das PDF kann geändert werden und Kommentare und Notizen (nativ) hinzugefügt werden.

Da die Bedienung von pdfclean vom Terminal aus aber nicht immer so viel Spaß macht, habe ich ein kleines AppleScript Droplet geschrieben, das die Sache noch einfacher macht. Im Folgenden findet sich eine verbesserte Version meines Codes wieder.

Handlungsanweisung: (Version 2)

  1. Man lade sich MuPDF, entpacken es und lege es an einem Ort seiner Wahl ab.
  1. Man nehme den AppleScript-Editor und füge folgenden Code ein und passen den Pfad „/Applications/Tools/mupdf/pdfclean“ nach den eigenen Gegebenheiten an:

-- if applet is double-clicked

set this to the POSIX path choose file with prompt "Select PDF-file to clean:"

set this_path to the POSIX path of this

#display dialog (this_path)

do shell script "/Applications/Tools/mupdf/pdfclean " & this_path & " " & this_path & "_unrestricted.pdf"

-- or if the file is drag and dropped

on open these

        repeat with this in these

                set this_path to the POSIX path of this

                #display dialog (this_path)

                do shell script "/Applications/Tools/mupdf/pdfclean " & this_path & " " & this_path & "_unrestricted.pdf"

        end repeat

end open

  1. Man übersetzte das Script (mit dem Hammer, ^_°) und speichere es unter einem gefälligen Namen, z.B. PdfClean, als „Programm“ im AppleScript-Editor.

PDFs können nun auf das neue Droplet-Programm per Drag&Drop abgelegt werden. Die neuen Dateien erscheinen an dem Ort an dem auch die Ausgangsdatei befindet mit dem Anhängsel _unrestricted.pdf.

Nachtrag: Mit der neuen, zweiten Version des Codes kann man das AppleScript-Programm nun auch direkt starten und dann einen zu Entsichernde PDF-Datei auswählen.

Select-PDF-file-to-clean-2010-04-23-23-54.jpg

Wer Probleme mit dem AppleScript-Editor hat, findet Hilfe in folgendem Video. Mir hat es geholfen.

Wer Ästhet ist, kann auch noch ein schickeres Logo für das neue Droplet - wie gewohnt bei Mac OS X Apps - vergeben. Hier ein Versuch von mir als PNG. Img2icns kann bei der Umwandlung in ein Mac Icon helfen.

PDF-Locked-128-2010-04-23-23-54.png

Viel Spaß damit.

Kommentare :

  1. Hi,

    leider scheint es keine Möglichkeit zu geben, MuPDF direkt für OSX zu downloaden.

    Hast du es dir selber gebaut?

    Wäre über kurze mail christian.freisen [ AT ] gmail.com sehr glücklich.

    AntwortenLöschen
  2. Wer MuPDF nicht findet, kann es hier in der Version 0.5 laden:
    http://www.mupdf.com/download/archive/
    [7,46 MB]

    AntwortenLöschen