MacOS sieht einfach aus, aber wenn man sich etwas damit beschäftigt, bemerkt man, dass ungeahnte Möglichkeiten unter der Oberfläche schlummern. Beispielsweise ist die Pdf-Verarbeitung direkt im System integriert. Die Vorschau kann dementsprechend auch viel mehr als nur etwas anzuzeigen. Aber heute schauen wir uns an, wie man mit MacOS mehrere Pdfs oder Bilder im Finder auswählen kann und per Touchbar, Tastenkombination oder Mausklick automatisch umwandeln und abspeichern kann.
Inhalt
Automator: Arbeitsablauf erstellen
Wir möchten PNG-Covers aus de jeweilig ersten Seite einer Pdf-Datei erstellen und sie unter gleichem Namen woanders abspeichern:
- Automator öffnen (Cmd-Leertaste, App-Name)
- Neu / Schnellaktion
- Dateien und Ordner in Finder
- Finder Objekt filtern: Art = Pdf
- Shell-Skript ausführen (Python-Skript, das die erste Seite des Pdfs extrahiert, siehe unten)
Erste Seite des Pdfs extrahieren (hier kommt Quartz zum Einsatz, ein Teil von MacOS):
#! /usr/bin/python # import sys import os import tempfile from Quartz.CoreGraphics import * from os.path import splitext from os.path import basename from os.path import join def createPDFDocumentWithPath(path): return CGPDFDocumentCreateWithURL(CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault, path, len(path), False)) def main(argv): for input_pdf_filename in argv: doc = createPDFDocumentWithPath(input_pdf_filename) page_one = CGPDFDocumentGetPage(doc, 1) mediaBox = CGPDFPageGetBoxRect(page_one, kCGPDFMediaBox) if CGRectIsEmpty(mediaBox): mediaBox = None file_name, extension = splitext(basename(input_pdf_filename)) output_path = join(tempfile.gettempdir(), file_name + extension) writeContext = CGPDFContextCreateWithURL(CFURLCreateFromFileSystemRepresentation(kCFAllocatorDefault, output_path, len(output_path), False), None, None) CGContextBeginPage(writeContext, mediaBox) CGContextDrawPDFPage(writeContext, page_one) CGContextEndPage(writeContext) CGPDFContextClose(writeContext) del writeContext print output_path if __name__ == "__main__": main(sys.argv[1:])
-
- Der nächste Teil ist, Pdf-Seiten als Bilder zu rendern:
(Farbmodell: RGB, PNG, 200 dpi, mittlere Komprimierung)
- Der nächste Teil ist, Pdf-Seiten als Bilder zu rendern:
-
- Abschließend wird das Bild z.B. auf 700 Pixel maximallänge skaliert
- in einem beliebigen Ordner gespeichert
- und (optional) mit dem für MacOS kostenlos erhältlichen ImageOptim geöffnet (die Optimierung erfolgt im Anschluss an das Speichern aller Bilder automatisch)
- Abspeichern unter beliebigem Namen
Schnellaktion ausführen
Beliebige Pdfs im Finder markieren. Anschließend:
- per Maus: Rechtsklick, Schnellaktion, die eben erstelle Schnellaktion auswählen
- Touchpad konfigurieren:
- Einstellungen, Erweiterungen, Touchbar
- Schnellaktionen auswählen.
- Control Strip anpassen klicken und „Schnellaktionen“ auf ein nicht benötigtes Symbol der Touchbar ziehen.
- Einstellungen, Erweiterungen, Touchbar
- per Tastenkombination:
- Einstellungen, Tastatur, Kurzbefehle
- Unter Dienste / Dateien und Ordner die entprechende Schnellaktion auswählen
- Doppelklick rechts in die Zeile und Tastatkombination festlegen. z.B. control+option+command+Taste. Die drei Steuerunstasten sind leicht gedrückt und man verhindert Doppelbelegungen.
- Einstellungen, Tastatur, Kurzbefehle
ImageOptim-Einstellungen
Dieser Schritt ist optional, aber wenn geringe Dateigröße wichtig ist, sollte man ein paar Einstellungen überprüfen:
PNGOUT, Zopfli und vor allem Guetzli sind sehr rechenintensive Optionen, die man eher abwählen sollte.
Will man eine möglichst kleine PNG-Datei, kann man die Qualität bis auf 40% reduzieren. Dadurch werden auch die PNG-Farben reduziert.