Bilder für Instagram Posts aus Capture One erstellen

In diesem Blogpost zeige ich dir, wie du mit einem Shell-Skript und Automator Instagram-Posts direkt aus Capture One generieren kannst. Mein Ziel (und das des Skripts) ist es, die Bilder für Instagram-Posts optimal in einen weißen Rahmen (Passepartout) mit dem neuen Seitenverhältnis 4:5 einzubetten. Die bearbeiteten Bilder werden in einem iCloud-Ordner gespeichert, sodass du jederzeit darauf zugreifen und Instagram-Posts erstellen kannst. Für das Vorausplanen der Posts nutze ich das Tool Buffer, mit dem du deine Inhalte im Voraus planen und veröffentlichen kannst.

Du wirst ein paar Vorkenntnisse zum Mac, Automator und zu Kommandozeilen Werkzeugen brauchen um dieses Skript installieren und verwenden zu können.

Voraussetzungen

Bevor es losgehen kann, brauchst du ein paar Tools auf deinem Mac (da ich keine Windows Maschine habe, kann ich dafür leider nix bieten).

  1. Homebrew
    Homebrew ist ein beliebter Paketmanager für macOS, der die Installation von Software und Tools erheblich vereinfacht. Du kannst Homebrew installieren, indem du das folgende Kommando im Terminal eingibst:

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

    Für weitere Informationen und Anleitungen zur Nutzung von Homebrew besuche die offizielle Website.

  2. ImageMagick
    ImageMagick ist ein leistungsstarkes Kommandozeilen-Tool zur Bearbeitung von Bildern. Es ermöglicht dir, Bilder in verschiedenen Formaten zu konvertieren, zu skalieren und zu bearbeiten. Um ImageMagick zu installieren, führe den folgenden Befehl im Terminal aus:

    brew install imagemagick

    Mehr Informationen über ImageMagick findest du auf der ImageMagick-Website.

  3. ExifTool
    ExifTool ist ein Tool zur Bearbeitung und Anzeige von Metadaten in Bilddateien. Es ist besonders nützlich, um EXIF-Daten zu extrahieren und zu ändern. Installiere ExifTool mit dem folgenden Befehl:

    brew install exiftool

    Details und Anleitungen findest du auf der ExifTool-Website.

  4. Automator
    Automator ist eine vorinstallierte Anwendung auf macOS, mit der du automatisierte Workflows erstellen kannst. Du musst nichts extra installieren. Um Automator zu finden, suche einfach in Spotlight (Cmd + Leertaste) nach „Automator“.

  5. Schriftarten
    Für das Skript benötigst du die Schriftarten Font Awesome und Open Sans. Du kannst Font Awesome von Font Awesome herunterladen und Open Sans von Google Fonts. Stelle sicher, dass du die Schriftarten korrekt installierst, indem du die .ttf-Dateien in den Ordner ~/Library/Fonts ziehst.

Skript anpassen

Das bereitgestellte Skript muss an deine Systemumgebung angepasst werden. Achte darauf, dass die folgenden Pfade korrekt gesetzt sind:

MAGICK="/opt/homebrew/bin/magick"  # Pfad zu ImageMagick
MOGRIFY="/opt/homebrew/bin/mogrify"  # Pfad zu Mogrify
EXIFTOOL="/opt/homebrew/bin/exiftool"  # Pfad zu ExifTool
FONT_AWESOME="/Users/deinusername/Library/Fonts/Font Awesome 6 Pro-Regular-400.otf"  # Pfad zur Font Awesome Schriftart
FONT_OPENSANS="/Users/deinusername/Library/Fonts/OpenSans_Condensed-Bold.ttf"  # Pfad zur Open Sans Schriftart

Ersetze deinusername durch deinen eigenen Benutzernamen und überprüfe die Pfade zu den installierten Tools.

Hier nun das Skript zum kopieren:

#!/bin/zsh
clear

# Setze die TERM-Variable
export TERM=xterm-256color
export LANG=en_US.UTF-8

# Pfade
MAGICK="/opt/homebrew/bin/magick"
MOGRIFY="/opt/homebrew/bin/mogrify"
EXIFTOOL="/usr/local/bin/exiftool"
FONT_AWESOME="/Users/deinusername/Library/Fonts/Font Awesome 6 Pro-Regular-400.otf"
FONT_OPENSANS="/Users/deinsuername/Library/Fonts/OpenSans_Condensed-Bold.ttf"

# Config
FINAL_WIDTH=1600   # Endgültige Breite des Bildes
FINAL_HEIGHT=2000  # Endgültige Höhe für das 4:5-Format
BORDERPERCENT="0.925" # Anteil Bild / Rahmen

# AppleScript für die Parameterabfrage
filmSimulation=$(osascript -e 'set parameterList to {"Provia", "Velvia", "Astia", "Classic Chrome", "Classic Negative", "Eterna", "Eterna Bleach ByPass", "Nostalgic Negative", "Pro Neg Hi", "Pro Neg Std", "Reala ACE", "Sepia", "Schwarz-Weiss", "Acros"}
set chosenParameter to (choose from list parameterList with prompt "Wähle eine Filmsimulation aus:") as string
return chosenParameter')

jpegRecipe=$(osascript -e 'set jpegRecipe to text returned of (display dialog "Bitte gib das JPEG-Rezept ein:" default answer "")')

# Funktionen
function get_image_dimensions {
  local file="$1"
  WIDTH=$($MAGICK identify -format "%w" "$file")
  HEIGHT=$($MAGICK identify -format "%h" "$file")
}

function calculate_borders {
  if (( WIDTH > HEIGHT )); then
    # Querformat: Lange Kante auf FINAL_WIDTH, proportional skalieren
    WIDTHWITHOUTBORDER=$(echo "scale=2; $FINAL_WIDTH * $BORDERPERCENT" | bc)
    HEIGHTWITHOUTBORDER=$(echo "scale=2; $WIDTHWITHOUTBORDER * $HEIGHT / $WIDTH" | bc)
  else
    # Hochformat oder quadratisch: Lange Kante auf FINAL_WIDTH, proportional skalieren
    HEIGHTWITHOUTBORDER=$(echo "scale=2; $FINAL_HEIGHT * $BORDERPERCENT" | bc)
    WIDTHWITHOUTBORDER=$(echo "scale=2; $HEIGHTWITHOUTBORDER * $WIDTH / $HEIGHT" | bc)
  fi

  # Berechnung der Ränder unter Berücksichtigung von BORDERPERCENT
  BORDERX=$(echo "scale=2; ($FINAL_WIDTH - $WIDTHWITHOUTBORDER) / 2" | bc)
  BORDERY=$(echo "scale=2; ($FINAL_HEIGHT - $HEIGHTWITHOUTBORDER) / 2" | bc)
}

function resize_image {
  local file="$1"
  DIMENSIONS="${WIDTHWITHOUTBORDER}x${HEIGHTWITHOUTBORDER}"
  $MOGRIFY -resize "$DIMENSIONS" "$file"
}

function add_borders {
  local file="$1"
  $MOGRIFY "$file" -bordercolor white -border ${BORDERX}x${BORDERY} "$file"
}

function add_exif_data {
  local file="$1"
  local dir=$(dirname "$file")
  local base=$(basename "$file" .jpg)
  local exif_file="${dir}/${base}-exif.jpg"
  
  cp "$file" "$exif_file"

  local MODEL=$($EXIFTOOL -p '${Model}' "$file")
  local ISO=$($EXIFTOOL -p '$EXIF:ISO' "$file")
  local SHUTTERSPEED=$($EXIFTOOL -p '${ShutterSpeed}' "$file")
  local APERTURE=$($EXIFTOOL -p '$Aperture' "$file")
  local FOCALLENGTH=$($EXIFTOOL -p '$FocalLength' "$file")
  local MAKE=$($EXIFTOOL -p '${Make}' "$file")
  local LENSMODEL=$($EXIFTOOL -p '${LensModel}' "$file")

  $MAGICK "$exif_file" -level 0%,140% -blur 0x8 -gravity NorthWest -pointsize 96 -fill white \
  -font "$FONT_AWESOME" \
  -annotate +100+350 "$(printf '\uf030')" \
  -annotate +100+470 "$(printf '\ue2df')" \
  -annotate +100+590 "$(printf '\ue29e')" \
  -annotate +105+710 "$(printf '\ue028')" \
  -annotate +93+830 "$(printf '\uf06e')" \
  -annotate +100+945 "$(printf '\uf8b7')" \
  -annotate +100+1060 "$(printf '\uf6bf')" \
  -font "$FONT_OPENSANS" \
  -annotate +250+330 "$MAKE $MODEL" \
  -annotate +250+450 "ƒ/$APERTURE" \
  -annotate +250+570 "$SHUTTERSPEED s" \
  -annotate +250+690 "ISO $ISO" \
  -annotate +250+810 "$FOCALLENGTH ($LENSMODEL)" \
  -annotate +250+930 "$filmSimulation" \
  -annotate +250+1050 "$jpegRecipe" \
  "$exif_file"
}

# Hauptskript
for file in "$@"; do
  # Kopieren der Datei am Anfang
  local dir=$(dirname "$file")
  local base=$(basename "$file" .jpg)
  local original_file="${dir}/${base}-original.jpg"
  
  cp "$file" "$original_file"
  
  get_image_dimensions "$file"
  calculate_borders
  resize_image "$file"
  add_borders "$file"
  add_exif_data "$file"
done

Was macht das Skript?

Das Skript automatisiert den Prozess der Bildbearbeitung und -vorbereitung für Instagram. Hier sind die Hauptfunktionen und Konfigurationsmöglichkeiten:

  1. Bilddimensionen:

    • Das Skript ermittelt die Dimensionen des Bildes, um sicherzustellen, dass es für Instagram optimiert ist. Die lange Kante des Bildes wird auf 1600 Pixel skaliert, das reicht für Instagram völlig aus.

  2. Rahmen hinzufügen:

    • Es wird ein weißer Rahmen um das Bild hinzugefügt, wobei der Anteil des Bildes zum Rahmen durch die Variable BORDERPERCENT konfiguriert werden kann (standardmäßig auf 0.925 gesetzt). Dies sorgt dafür, dass das Bild gut in den Instagram-Feed passt.

  3. Filmsimulation auswählen:

    • Ja, das Skript ist für Fujifilm-Fotograf:innen gedacht :)

    • Zu Beginn des Skripts wirst du aufgefordert, eine Filmsimulation (z.B. „Provia“, „Velvia“) auszuwählen. Diese Auswahl wird für die Bildbearbeitung verwendet und kann leicht angepasst werden, indem du die Liste der Optionen im Skript modifizierst.

  4. EXIF-Daten hinzufügen:

    • Das Skript verwendet ExifTool, um wichtige Metadaten wie Kamera-Modell, ISO, Blende, Verschlusszeit und Brennweite auf das Bild anzuwenden. Diese Informationen werden visuell auf einem zweiten Bild hinzugefügt, was für Instagram-Posts nützlich ist, da sie den Zuschauern einen Kontext zu den Aufnahmen geben.

  5. JPEG-Rezept eingeben:

    • Du wirst auch aufgefordert, das verwendete JPEG-Rezept einzugeben, das in die Bildbeschreibung eingefügt wird. Wenn du keins verwendest hast, kannst du einfach "-" eingeben. Nicht abbrechen, da sonst das Skript abbricht.

  6. Dateikopien:

    • Das Skript erstellt eine Kopie des Originals und speichert diese als „-original.jpg“, bevor es die bearbeiteten Bilder erstellt. Dies stellt sicher, dass das Originalbild immer verfügbar bleibt.

  7. Speichern in einem Ordner:

    • Die bearbeiteten Bilder werden bei mir in einem iCloud-Ordner gespeichert, sodass ich jederzeit Zugriff darauf habe. Du kannst natürlich auch einen lokalen Pfad verwenden. Den Pfad stellst du nicht im Skript, sondern im Capture One Export Rezept ein.

Skript in Automator einfügen

Um das Skript in Automator zu integrieren, folge diesen Schritten:

  1. Automator öffnen:

    • Suche nach „Automator“ in Spotlight (Cmd + Leertaste) und öffne die App.

  2. Neues Programm erstellen:

    • Klicke auf „Ablage > Neu“ und wähle „Dienst“ oder „Programm“ aus. Dies ermöglicht dir, das Skript als ein Programm zu speichern, das Capture One nach dem Export aufrufen kann.

  3. Shell-Skript hinzufügen:

    • Suche in der linken Spalte nach „Shell“ (Shell-Skript ausführen) und ziehe das Element in den rechten Bereich des Automator-Fensters.

    • Stelle sicher, dass die Option „Eingabe übergeben“ auf „Als Argumente“ eingestellt ist. Dies ist wichtig, damit das Skript die Dateien, die Capture One übergibt, als Eingabe erhält.

  4. Skript einfügen:

    • Ersetze den Standardtext im Shell-Skript-Bereich mit deinem angepassten Skript. Achte darauf, dass alle Pfade korrekt sind und dass das Skript wie gewünscht funktioniert. Pfade anpassen nicht vergessen (siehe oben).

  5. Automator-Dienst speichern:

    • Klicke auf „Ablage“ in der oberen Menüleiste und wähle „Sichern“. Vergib einen eindeutigen Namen für deinen Dienst, z. B. „Instagram Post erstellen“. Dies ermöglicht dir, den Dienst später leicht zu finden und zu verwenden. Ich habe das Skript auf in iCloud abgelegt, damit alle meine Macs es verwenden können.

Export-Rezept in Capture One anlegen

Um das Automator-Skript aus Capture One zu starten, musst du ein Export-Rezept erstellen. Hier sind die detaillierten Schritte, um dies zu tun:

  1. Capture One öffnen:

    • Starte Capture One und öffne das Projekt oder die Sammlung, die die Bilder enthält, die du für Instagram bearbeiten möchtest.

  2. Export-Rezept erstellen:

    • Wähle die Bilder aus, die du exportieren möchtest, indem du sie in der Bibliotheksansicht markierst. Klicke dann auf die Schaltfläche „Exportieren“ in der oberen rechten Ecke oder wähle „Datei“ > „Exportieren“ aus dem Menü. Du kannst natürlich auch mit dem Werkzeugreiter „Exportieren“ arbeiten.

  3. Neues Rezept auswählen:

    • Klicke auf die drei Punkte oder das Plus Symbol um ein neues Rezept hinzuzufügen.

  4. Rezept benennen:

    • Gib dem Rezept einen aussagekräftigen Namen, z. B. „Instagram Export“, damit du es leicht wiedererkennen kannst.

  5. Export-Einstellungen konfigurieren:

    • Wähle den iCloud-Ordner aus, in dem die bearbeiteten Bilder gespeichert werden sollen. Dies ermöglicht dir, die bearbeiteten Bilder direkt in einem Ort zu speichern, auf den du später in Buffer zugreifen kannst.

    • Stelle die JPEG-Qualität ein (z. B. 80-90%) und stelle die lange Kante auf 1600 Pixel ein, wenn dies nicht automatisch erfolgt.

    • Vergib einen Namen für die Datei so wie du es gerne hast.

  6. Shell-Skript ausführen:

    • Suche im Bereich „Export Format und Größe“ des Export-Rezepts nach „Öffnen Mit“ und wähle hier das Automator Skript aus. Capture One führt dann das Skript nach dem Exportieren mit der exportierten Datei als Argument aus.

Anwendung

Du kannst jetzt das Export Rezept markieren und eine Datei aus Capture One exportieren. Das Skript sollte nach dem Export aufgerufen werden und dich nach Filmsimulation und Rezept fragen. Du hast am Ende dann drei Dateien. Das Bild mit Rahmen, das Originalbild (-original) und das Bild im Rahmen, leicht unscharf mit den darüber gelegten Exif-Informationen (-exif).

Fazit

Jetzt bist du bereit, deine Instagram-Posts direkt aus Capture One zu erstellen. Mit diesem Workflow kannst du Zeit sparen und deine Arbeit effizienter gestalten. Achte darauf, das Skript und die Pfade korrekt anzupassen, um eine reibungslose Funktion zu gewährleisten.

Thomas B. Jones

Thomas B. Jones ist ein deutsch-amerikanischer Fotograf, der die präzise Handwerkskunst deutscher Fotografie mit der kreativen Dynamik amerikanischer Perspektiven vereint. Sein beruflicher Schwerpunkt liegt auf professioneller Unternehmensfotografie, authentisch und zielgerichtet für renommierte Firmen und Wirtschaftspublikationen. Sein Portfolio umfasst ausdrucksstarke Porträts, atmosphärische Unternehmensreportagen sowie Fotografien für Geschäftsberichte und Imagevideos. Von seinem Standort in Kirchheim unter Teck aus realisiert er deutschlandweit Projekte.

https://www.thomasjones.de
Zurück
Zurück

Echoes of Change: Havana – Ausstellung im Fuji Store Nürnberg

Weiter
Weiter

Wie Fotos die visuelle Identität Ihrer Marke prägen