Wie können in Okular erstellte Hervorhebungen und Anmerkungen beibehalten werden?


12

Ich muss verschiedene Forschungsarbeiten durchlesen und während des Kurses hervorheben und kommentieren. Aber wenn ich die Datei später umbenenne oder den Computer ändere, fehlen die Hervorhebungen und Anmerkungen, da sie separat gespeichert werden. Wie kann ich diese in Okular erstellten Markierungen / Anmerkungen beibehalten, wenn ich in Zukunft die Maschine wechsle?

Antworten:


11

Seit KDE 4.2 verfügt Okular über die Funktion "Dokumentenarchivierung". Dies ist ein Okular-spezifisches Format für das Mitführen des Dokuments sowie verschiedener damit verbundener Metadaten (derzeit nur Anmerkungen). Sie können ein "Dokumentarchiv" aus dem geöffneten Dokument heraus speichern, indem Sie Datei → Exportieren als → Dokumentarchiv wählen. Um ein Okular-Dokumentenarchiv zu öffnen, öffnen Sie es einfach mit Okular, wie es zB ein PDF-Dokument wäre.

Seit Okular 0.15 können Sie Anmerkungen auch direkt in PDF-Dateien speichern. Diese Funktion ist nur verfügbar, wenn Okular mit Version 0.20 oder höher der Poppler-Rendering-Bibliothek erstellt wurde. Mit Datei → Speichern unter ... können Sie die Kopie der PDF-Datei mit Anmerkungen speichern.

Lesen Sie hier: https://docs.kde.org/stable5/en/kdegraphics/okular/annotations.html


4

Die aktuelle Version von Okular ermöglicht das Speichern der PDF-Datei mit den Anmerkungen unter Datei -> Speichern unter.

Ich wollte jedoch etwas automatisiertes. Deshalb habe ich ein Autokey-Skript erstellt, damit die Anmerkungen beim Schließen der PDF-Datei automatisch in der PDF-Datei gespeichert werden. Beachten Sie, dass dieses Skript Ihre PDF-Datei speichert und die ursprüngliche PDF-Datei überschreibt.

Das Autokey-Skript

Zuerst müssen Sie installieren autokey-gtkund xdotoolzuerst:

sudo apt-get install autokey-gtk xdotool

Gehen Sie nun in Autokey zu New -> Script. Fügen Sie Ihrem neuen Skript den folgenden Code hinzu:

#This is used to save PDF in okular so that the annotations persist in the PDF file itself
#We have to use to `xdotool` to bring the dialogs back into focus, otherwise they are losing focus 
import subprocess

keyboard.send_keys("<ctrl>+<shift>+s")
time.sleep(0.4)
subprocess.call(["xdotool", "windowfocus", "`xdotool getwindowfocus`"])
time.sleep(0.1)
keyboard.send_key("<enter>")
time.sleep(0.1)
subprocess.call(["xdotool", "windowfocus", "`xdotool getwindowfocus`"])
time.sleep(0.1)
keyboard.send_key("<tab>")
time.sleep(0.1)
keyboard.send_key("<enter>")
time.sleep(0.1)
subprocess.call(["xdotool", "windowfocus", "`xdotool getwindowfocus`"])
time.sleep(0.5)
keyboard.send_keys("<ctrl>+q") #Quit Finally

Sie können diesem Skript jetzt einen Fensterfilter und einen Hotkey zuweisen. Fügen Sie im Fensterfilter hinzu .*okular.*. Und im Hotkey habe ich benutzt <ctrl>+s. Sie könnten alles andere verwenden, das Sie bevorzugen.

Also, wann immer ich okular beenden muss, verwende ich CtrlSund okular wird beendet, nachdem ich mein pdf gespeichert habe.


@HermanJaramillo: Ich bin froh, dass dies geholfen hat :) Denken Sie jedoch daran, dass dies ein ziemlicher Hack ist. Ich bin immer noch auf der Suche nach einem robusteren Ansatz.
Shivams

1
Dies ist die beste Software, die ich bisher gesehen habe! Es ist wie ein Shell-Skript, nur für GUI-Anwendungen! :)
matthieu

2

Ich glaube ich habe die Antwort. Nachdem Sie diesen einfachen Suchbefehl in Ihrem Home-Verzeichnis ausgeführt haben:

find -type d -iname "*okular*" -print

Sie finden dieses Verzeichnis:

/home/YOUR_USER_NAME_HERE/.kde/share/apps/okular

Darunter befindet sich das Verzeichnis:

docdata

Dieses docdataVerzeichnis enthält XML-Dateien für jedes Dokument, das Sie mit Okular geöffnet haben. Sichern Sie einfach diesen Ordner und tragen Sie ihn auf Ihren neuen Computer. Fügen Sie ihn dort an der gleichen Stelle ein. Ihre Anmerkungen bleiben erhalten!


Klappt wunderbar.
JohnRos
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.