Cerca il numero di pagina con PDF Expert e Applescript

0

Sto provando a scrivere uno script di Applescript che aprirà un pdf agile.pdf con PDF Expert e cercherà un numero di pagina.

Mi sto avvicinando al seguente script:

do shell script "open agile.pdf"
delay 1.0

tell application "System Events" 
  tell application process "PDF Expert"
    click menu item "Go to Page..."  of menu 1 of menu bar item "Go"  of menu bar 1
    keystroke "42"
    key code 76
  end tell
end tell

Il problema è il mio script, poiché funzionerà solo se ho già fatto clic su una finestra di PDF Expert .

Posso dire a Applescript di "fare clic sulla finestra Esperto PDF dopo l'apertura?

Inoltre, posso dire a Applescript di "aspettare fino a quando la finestra esiste?

Leggevo un'altra risposta che fa sembrare che quanto segue funzionerà ma non lo fa:

repeat until window "agile" of process "PDF Expert" exists
end repeat

Ho fatto qualche ricerca con UIElementInspector come raccomandato in un'altra risposta . Questo è l'output della finestra PDF Expert :

<AXApplication: “PDF Expert”>
 <AXWindow: “agile”>
  <AXSplitGroup>
   <AXScrollArea>

Attributes:
   AXHorizontalScrollBar:  “<AXScrollBar>”
   AXParent:  “<AXSplitGroup>”
   AXChildren:  “<array of size 5>”
   AXFocused (W):  “1”
   AXSize:  “w=892 h=649”
   AXRole:  “AXScrollArea”
   AXTopLevelUIElement:  “<AXWindow: “agile”>”
   AXHelp:  “(null)”
   AXChildrenInNavigationOrder:  “<array of size 5>”
   AXPosition:  “x=292 y=-803”
   AXWindow:  “<AXWindow: “agile”>”
   AXRoleDescription:  “scroll area”
   AXVerticalScrollBar:  “<AXScrollBar>”
   AXContents:  “<array of size 3>”
   AXFrame:  “x=292 y=-803 w=892 h=649”

Actions:
   AXScrollLeftByPage - scroll left by a page
   AXScrollRightByPage - scroll right by a page
   AXScrollUpByPage - scroll up by a page
   AXScrollDownByPage - scroll down by a page
    
posta mbigras 20.02.2017 - 09:49
fonte

2 risposte

1

PDF Exper e keystroke "42" non funzionano per me.

Tuttavia, utilizzando Skim e key code funziona:

do shell script "open -a Skim agile.pdf"
delay 0.1

tell application "System Events" 
  tell application process "Skim"
    tell application "System Events" to tell process "Skim" to click menu item "Go to Page…" of menu "Go" of menu bar 1
    delay 0.1
    key code {21, 19, 36}
  end tell
end tell
    
risposta data 20.02.2017 - 11:19
fonte
0

Questo dovrebbe funzionare per te

do shell script "open agile.pdf"
delay 1.0
activate application "PDF Expert"
delay 1 -- you may need to adjust this
tell application "System Events"
    tell process "PDF Expert"
        click menu item "Go to Page..." of menu 1 of menu bar item "Go" of menu bar 1
    end tell
end tell
    
risposta data 20.02.2017 - 11:04
fonte

Leggi altre domande sui tag