Es geht um folgendes Szenario:
Ich habe eine paar Bilder, häufig sind es Scans, und möchte diese in ein fortlaufendes PDF umwandelt. Das geht z. B. mit der Applikation media-gfx/img2pdf, nur leider ist das eine Kommandozeilentool. Das ist auch ok, aber manchmal etwas umständlich wenn man erst die Konsole öffnen muß und mehre Dateien unter vielen addressieren will.
Das geht viel eleganter. In KDE Plasma lassen sich userspezifische Kontext (action) Menüs definieren. Hier befindet sich dern Eintrag:
Code: Select all
Aktionen - Create PDF from image
Das habe ich wie folgt realisiert:
Ich erzeuge folgendes Skript im Verzeichnis /usr/local/bin oder irgendein Verzeichnis welches sich im Pfad befindet:
Code: Select all
#!/bin/bash
# Check, if files are specified
if [ $# -eq 0 ]; then
kdialog --error "Keine Dateien ausgewählt."
exit 1
fi
# Extract filename without extension
output_name=$(basename "${1%.*}.pdf")
# execute img2pdf
output=$(img2pdf -o "$output_name" "$@" 2>&1)
# check exit status
if [ $? -eq 0 ]; then
kdialog --msgbox "PDF erfolgreich erstellt: $output_name"
else
kdialog --error "Fehler beim Erstellen der PDF:\n\n$output"
fi
Nun muß man noch das Kontextmenü erzeugen. Das mache ich durch eine Datei im Verzeichnis "~/.local/share/kservices5/create-pdf-from-images.desktop" mit folgendem Inhalt:
Code: Select all
[Desktop Entry]
Type=Service
X-KDE-ServiceTypes=KonqPopupMenu/Plugin
MimeType=all/all;
Actions=img2pdf;
[Desktop Action img2pdf]
Name=Create PDF from image
Icon=application-pdf
Exec=img2pdf-desktop-action %F
Für systemweite Änderungen nimmt man das Verzeichnis:
Code: Select all
/usr/share/kservices5/ServiceMenus/
Jetzt sollte es funktionieren. Ich hoffe, das war jetzt hilfreich. Feedback willkommen.
-Erdie

