Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Bestimmte Seite in einem PDF-Dokument anzeigen? (https://www.delphipraxis.net/63499-bestimmte-seite-einem-pdf-dokument-anzeigen.html)

PeterPanino 19. Feb 2006 20:20


Bestimmte Seite in einem PDF-Dokument anzeigen?
 
Ich möchte von einem Delphi-Programm aus:

a) ein bestimmtes PDF-Dokument im Acrobat-Reader laden, und

b) eine bestimmte Seite dieses Dokumentes im Acrobat Reader anzeigen.

(a) ist klar.

(b) Leider gibt es nirgendwo Informationen darüber zu finden, welche Befehlszeilen-Argumente Acrobat Reader unterstützt. Am besten wäre: AcroRd32 AFile.pdf -pg32 (öffnet AFile.pdf im Acrobat Reader und zeigt Seite 32 an).

Wer weiß mehr darüber?

Was ich bis jetzt herausgefunden habe:

Mit AcroRd32 [AFile.pdf] kann man den Acrobat Reader (V. 7.0) über die Befehlszeile starten und ein PDF-Dokument öffnen.

eisblock 19. Feb 2006 21:51

Re: Bestimmte Seite in einem PDF-Dokument anzeigen?
 
Hallo!
Für die Parameter bitte hier (Adobe Reader <7) oder hier (Adobe Reader 7) schauen.
aber du musst beachten, dass einige Leute keinen Acrobat Reader haben, sondern Acrobat Professional benutzen.
In diesem Fall heißt die EXE-Datei nicht Acrord32, sondern Acrobat (zumindest bei mir)...

PeterPanino 19. Feb 2006 23:14

Re: Bestimmte Seite in einem PDF-Dokument anzeigen?
 
Zitat:

Zitat von eisblock
Hallo!
Für die Parameter bitte hier (Adobe Reader <7) oder hier (Adobe Reader 7) schauen.
aber du musst beachten, dass einige Leute keinen Acrobat Reader haben, sondern Acrobat Professional benutzen.
In diesem Fall heißt die EXE-Datei nicht Acrord32, sondern Acrobat (zumindest bei mir)...

Vielen Dank für den Link!

Mit Acrobat Reader 7.0 funktioniert die Befehlszeile mit beiden folgenden Versionen (die letztere entgegen den Spezifikationen im Open Parameters Dokument):

AcroRd32 /A "page=3=OpenActions" "C:\AFile.pdf"

AcroRd32 /A "page=3" "C:\AFile.pdf"

1) Kann jemand bestätigen, dass genau diese beiden Befehle auch mit Arobat Reader < 7 funktionieren? (Habe keine Lust, Reader 7.0 zu deinstallieren und frühere Versionen zu installieren ...).

2) Weiters: Gibt es eine Syntax in diesem Zusammenhang, bei der man den Programmnamen weglassen kann, damit in jedem Fall das assoziierte Programm gestartet wird? (Schließlich genügt in der Befehlszeile ja auch der Dateiname, um das PDF im assoziierten Programm zu öffnen).

Sonst müsste man eben in der Registry nachsehen, ob .PDF mit Acrobat Reader assoziiert ist. (Oder gibt es eine Umgebungsvariable?).

Ralf Kaiser 20. Feb 2006 07:23

Re: Bestimmte Seite in einem PDF-Dokument anzeigen?
 
[quote="PeterPanino"]
Zitat:

Zitat von eisblock
Hallo!
2) Weiters: Gibt es eine Syntax in diesem Zusammenhang, bei der man den Programmnamen weglassen kann, damit in jedem Fall das assoziierte Programm gestartet wird? (Schließlich genügt in der Befehlszeile ja auch der Dateiname, um das PDF im assoziierten Programm zu öffnen).

Sonst müsste man eben in der Registry nachsehen, ob .PDF mit Acrobat Reader assoziiert ist. (Oder gibt es eine Umgebungsvariable?).

Hallo,

Delphi-Quellcode:
uses ShellAPI;
[...]
ShellExecute(0, 'open', Pchar(PDFDatei), Pchar(Parameter), PChar(AktuellesVerzeichnis), SW_SHOWNORMAL);
Öffnet die angegebene PDF Datei mit dem Programm das zugewiesen ist. wenn dies ein anderes Programm als der Acrobat ist, kann es natürlich sein, daß die Parameter ander lauten.

Ciao,
Ralf

Lannes 20. Feb 2006 08:50

Re: Bestimmte Seite in einem PDF-Dokument anzeigen?
 
Hallo,

zu 1.)
beide Befehlsvarianten funktionieren in der Version 6.0

PeterPanino 20. Feb 2006 18:00

Re: Bestimmte Seite in einem PDF-Dokument anzeigen?
 
Zitat:

Zitat von Lannes
Hallo,

zu 1.)
beide Befehlsvarianten funktionieren in der Version 6.0

Vielen Dank!


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:38 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz