Pdf anzeigen mit XProfan

  • Hallo,
    ich weiß nicht ob das überhaupt möglich ist, aber vielleicht geht es?

    Ich erstelle mit OpenOffice eine PDF Datei wobei auch Lesezeichen eingefügt werden.
    Das klappt im PDF problemlos auf ein bestimmtes Lesezeichen zu springen.

    Ich kann aus einem Profanprogramm mit @WinExecWait auch diese PDF Datei anzeigen.
    Meine Frage: kann ich die PDF Datei beim Aufruf dabei gleich auf ein bestimmtes Lesezeichen positionieren?

    Danke
    Gerhard.

    XProfan11, Windows 7

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress, WoltLab & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

    Wenn du Fragen hast, kannst du dich gerne jederzeit an @Maximilian Rupp wenden

    Hinweis:

  • Hallo Gerhard,
    beim Vereinsprogramm lege ich für die Hilfe portable SUMATRA bei und springe zu den Seiten für die entsprechende Anwendung. Erst wenn ich mit dem Programm und der PDF-Hilfe fertig bin werde ich Lesezeichen nachträglich einfügen und verwenden.
    Abfrage Hilfeaufruf von den TABs (Mitglieder, Haushalt,Bootsplätze und Inventar):

    Code
    DEF PathQuoteSpaces(1) ! "SHLWAPI.DLL","PathQuoteSpacesA"
    
    
      case (GetFocus(E1_hilf&)) & (GetActiveTab(T&) = 0): Hilfe "1 "
       case (GetFocus(E1_hilf&)) & (GetActiveTab(T&) = 1): Hilfe "5 "
       case (GetFocus(E1_hilf&)) & (GetActiveTab(T&) = 2): Hilfe "6 "'
       case (GetFocus(E1_hilf&)) & (GetActiveTab(T&) = 3): Hilfe "8 "'

    und PDF Aufruf:

    Code
    proc QuoteSpaces 'setzt Pfad in Anführungszeichen
        parameters Pfad$
        Declare Result#,result$
        Dim Result#,263
        string result#,0 = pfad$
        PathQuoteSpaces(result#)
        result$ = string$(result#,0)
        Dispose result#
        return result$
    endproc

    Ich hoffe, das hilft dir weiter. Kann sein, dass es nur geht, wenn der PDF-Viewer sich per Komandozeile steuern läßt.

    Hier einige:
    Keyboard shortcuts


    Navigationj/k: scroll up/down by line
    Up/Down:
    scroll up/down by line
    space: scroll by screen
    backspace:
    scroll back by screen
    n/p:
    next/previous page
    Page Down/Page Up:
    next/previous page
    g:
    go to page
    <Ctrl> + G:
    go to page
    Home:
    go to first page
    End:
    go to last page
    Viewing state+: zoom in -: zoom out
    <Shift> <Ctrl> +:
    rotate clockwise
    <Shift> <Ctrl> -:
    rotate counter-clockwise
    <Ctrl> + L:
    full screen
    F11: full screen
    F12:
    show/hide PDF bookmarks (table of contents)
    F5:
    switch focus between bookmarks window and main window
    Actions<Ctrl> + O: open PDF file
    <Ctrl> + W:
    close
    <Ctrl> + S:
    save
    <Ctrl> + P:
    print
    r: reload
    <Ctrl> + F: find text
    F3:
    find next
    <Shift> + F3:
    find previous
    <Ctrl> + Left Mouse:
    select text and copy to clipboard
    <Ctrl> + Q:
    print PDF file
    q:
    quit program

    Command-line arguments
    -page $pageno open PDF at a given page
    -nameddest $dest
    open PDF at a specified named destination
    -lang $language set user interface language. $language is a two-letter language code e.g. "en", "de"
    -title $title set the window title
    -restrict run in restricted mode. In restricted mode some options are disabled
    -reuse-instance
    use existing Sumatra process instead of starting a new process
    ....usw.


    Gruß Thomas

    Gruß Thomas

  • Hallo Thomas,

    ich habe eine Lösung gefunden. Die Idee kam von Dir.

    Wenn ich die PDF Datei nicht auf ein Lesezeichen, aber auf eine bestimmte Seite positionieren kann bin ich auch zufrieden.

    Mit SUMATRA geht es nur zum Teil. Wenn ich beim Aufruf auf eine Seite positioniere dann wird nur diese eine Seite angezeigt. Ein weiterblättern geht nicht.

    Ich konnte dann herausfinden, dass ich beim Aufruf des Acrobat Readers auch auf eine Seite positionieren kann und kann von dieser Seite weiterblättern.

    Der Aufruf sieht so aus:

    Code
    C:\Program Files (x86)\Adobe\Reader 9.0\Reader\AcroRd32.exe  /A "page=5" G:\BildShow/Hilfe.pdf

    Der Pfad für den Aufruf des Readers (AcroRd32.exe) sollte mit dem API FindExecutable gesucht werden.

    Gruß
    Gerhard.

  • Hallo Gerhard,
    war bis heute fischen in FBG/SE. Wenn nur 1 Seite angezeigt wird, ist dann unter "Einstellungen" > "Optionen" > "Ansicht" > "fortlaufend" eingestellt?
    Auch die "sumatrapdfprefs.dat" habe ich mir angepasst.
    Lesezeichen lassen sich nicht aufrufen.
    Unter Acrobat Reader 9.2 gibt es eine Funktion "gehe zu Lesezeichen". Ist mir aber noch nicht gelungen???
    Der Rest in den nächsten Tagen.

    Gruß Thomas

    Gruß Thomas

  • Geht denn der Open-parameter nameddest=name nicht mehr? Zugegeben, PDFOpenParameters.pdf ist vielleicht tatsächlich nur für Acrobat 7.0, und nicht für den Reader... Im Einleitungstext steht folgendes:

    <path to Acrobat> /A "<open parameter>=OpenActions" "<path to PDF file>"
    also z.B.:
    C:\Acrobat.exe /A "nameddest=lesezeichenname=OpenActions" "C:\example.pdf"

    Gruss

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • Bin mir nicht sicher, ob hier die Lesezeichen gemeint sind oder doch ein anderer interner "Anker".
    Ich habe diverse mal z.B. "DRUCKEN" als Unterlesezeichen.
    Hat einer mal eine PDF zum Testen, in der mit nameddest=$name etwas angsteuert werden kann?

    Das ist mit SUMATRA ja auch möglich, aber wie oder was muß in der PDF eingebaut sein?

    Gruß Thomas

    Gruß Thomas

  • Frank, ich glaube so wichtig ist das auch nicht. Aufruf einer bestimmten Seite ist ja kein Problem. Die Frage war ja in Richtung P.Specht, ob er das je getestet hat.
    Hinweise findet man ja allemal. Z.B. im Delphi-Forum : [url=http://www.delphi-forum.de/topic_Anzeigen…DF_63233,0.html]Delphi-Forum.de - Anzeigen von PDF in PDF Files,NamedDest mit ActiveX/AcroPDF[/url]

    Da ist vom Adobe Reader die Rede: Habe herausgefunden, dass man im Adobe Reader eigene unsichtbare Springpunkte einfügen kann, die mit "setNamedDest" angesprochen werden können.

    Ich kann das nicht finden oder meint er doch Adobe Acrobat?

    Gruß Thomas

    Gruß Thomas

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!