Montag, 21. Juni 2010

Action-Handler für Quicksilver anlegen. Beispiel 2: Remove PDF Restrictions und Code-Update für Droplet

Im ersten Artikel zu dem Thema habe ich das Warum und Wie zur Erstellung von eigenen Actions in Quicksilver beschrieben. Das Ganze ist, wie schon erwähnt, in Hinblick auf effiziente Bedienung zu lesen - aber auch in Bezug auf eine möglichst mauslose Bedienung des Macs. Siehe meinen Artikel dazu.

In diesem zweiten Beispiel soll es darum gehen, wie man einen Quicksilver-Action-Handler zum Entfernen von PDF-Restriktionen mittels muPDF macht.

Mit der Frage, wie man PDF-Sicherheitseinstellungen zurücksetzt, hatte ich mich schon beschäftigt und dazu ein AppleScript-Droplet vorgestellt. Dort steht auch, wo man muPDF bekommt.

Wenn es fertig ist, sieht der hier beschriebene Remove-Action-Handler in QS etwa so aus. (Ich habe gerade die ersten Buchstaben REMO.. im zweiten Feld von QS getippt.)

RemovePDFRestrictions-QS-Action-Handler-2010-06-21-22-57.jpg

Handlungsanweisung:

1. Man öffnen den AppleScript-Editor und füge folgenden Code ein und übersetzt ihn:

on open these_items

        set thePath to quoted form of POSIX path of these_items

        #catch errors if you want..

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

end open

Anmerkung: Der Pfad zu muPDF muss je nach den eigenen Gegebenheiten angepasst werden.

2. Das Script speichert man als RemovePDFRestrictions.scpt ab (oder was einem gefällt).

3. Man kopiert die .scpt-Datei in seinem User-Verzeichnis nach ~/Library/Application Support/Quicksilver/Actions/

        (Der Ordner „Actions“ ist wahrscheinlich nicht vorhanden und muss erst angelegt werden.)

4. Quicksilver neu starten (Ctrl-Cmd-q) und schon steht die neue Aktion zur Verfügung. Siehe Bild oben.

Störrische PDFs, die sich zwar öffnen lassen, aber etwa das Drucken, Kommentieren oder Kopieren verweigern, können nun sanft überredet werden. Man übergibt diese Dateien vom Finder mit der Tastenkombination [Cmd]+[Esc] an Quicksilver.

Hier gibt es noch ein Code-Update zu dem vor mir erstellten Droplet. In dieser verbesserten Version lassen sich PDFs nicht mehr nur auf das AppleScript-Programm per Drag & Drop ablegen, sondern man kann die Anwendung nun auch einfach direkt starten und eine PDF-Datei zum Entsichern auswählen. (Das macht zwar den QS-Action-Handler praktisch sinnlos, aber das Ganze sollte vornehmlich ja auch nur ein Beispiel sein.)

Droplet-Code: CleanPDF. Das Vorgehen zum Erstellen des Droplets wird im alten Artikel beschrieben. Ich habe den Code auch dort geupdated.

-- 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

Have fun.

Keine Kommentare :

Kommentar veröffentlichen