Ist es möglich, mit .desktop-Dateien lokale PDF-Dateien auf bestimmten Seiten mit einem Browser zu öffnen?

8

Ich möchte desktop fileszum Öffnen von PDF-Dateien auf bestimmten Seiten verwenden. Ich habe versucht, eine Datei mit der folgenden Syntax zu erstellen:

[Desktop Entry]
Encoding=UTF-8
Name=mypdf.pdf
Type=Link
URL=file:///home/myhomefolder/mypdf.pdf#page=45
Icon=application-pdf

Wenn ich diese Datei öffne, öffnet der Standardbrowser meine PDF-Datei auf Seite 1, es wird wie #page=45ein Kommentar betrachtet, obwohl file:///home/myhomefolder/mypdf.pdf#page=45ich das erwartete Ergebnis erhalte , wenn ich die Adresse direkt in den Browser einfüge (das PDF wird auf Seite 45 geöffnet). .

Ich habe festgestellt, dass wenn ich diese Syntax für PDF-Dateien im Internet verwende, sie wie erwartet funktioniert und das PDF auf der von mir festgelegten Seite geöffnet wird. Das Problem liegt nur bei lokalen Dateien. Ist es möglich, Desktop-Dateien zu verwenden, um lokale PDF-Dateien auf bestimmten Seiten zu öffnen? Oder ist es eine Einschränkung von desktop files?

Rafael Muynarsk
quelle

Antworten:

10

URL verwenden?

Ich muss es nachschlagen, aber ich scheine mich zu erinnern, dass Type Linkin einer .desktop-Datei veraltet ist. Wie Sie herausgefunden haben, wird es hier sowieso nicht funktionieren. Encodingist sicher veraltet, aber das ist nicht das Problem. Darüber hinaus xdg-openwird nicht funktionieren; Es öffnet Ihre Standardanwendung für PDF-Dateien.

Was dann verwenden?

Erstellen Sie eine .desktop-Datei und rufen Sie Ihren bevorzugten Browser mit der PDF-Datei + Seite als Argument auf. In Ihrem Beispiel:

[Desktop Entry]
Type=Application
Name=Open pdf on page 45
Exec=firefox 'file:///home/myhomefolder/mypdf.pdf#page=45'
Icon=application-pdf

Geben Sie hier die Bildbeschreibung ein

Machen Sie es dann ausführbar und doppelklicken Sie. Wenn Sie einen anderen Browser verwenden, müssen Sie die Exec=Zeile ändern, um dies widerzuspiegeln.

Jacob Vlijm
quelle
6

Bei einigen Dokumentbetrachtern können Sie sie mit einem Argument beginnen, das auf die gewünschte Seite verweist.

Von evince --help:

  -i, --page-index=NUMBER     The page number of the document to display.

Daher könnte Ihre .desktop-Datei folgendermaßen aussehen:

[Desktop Entry]
Name=mypdf.pdf page 45
Type=Link
Exec=evince --page-index=45 /home/myhomefolder/mypdf.pdf
Icon=application-pdf
Nonny Moose
quelle