Fischer-Bayern.de
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

Als PDF sichern…
Gehe zu Seite 1, 2, 3  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
fridolin
•->
•->


Anmeldedatum: 16.12.2005
Beiträge: 9

BeitragVerfasst am: 16.12.2005 - 13:47    Titel: Als PDF sichern… Antworten mit Zitat

Mac OS X 10.4.3

Ich möchte über AppleScript ein Dokument als PDF sichern. Bisher ist es mir nur über keystroke gelungen, im Drucken-Dialog das PDF-Menü zu öffen und den Eintrag "Als PDF sichern…" auszuwählen.

Code:

tell application "System Events"
   tell process "<Name>"
      set frontmost to true
      
      keystroke "p" using command down
      keystroke tab
      keystroke tab -- Anzahl Wiederholungen ist
      keystroke tab -- abhängig vom Programm, da
      keystroke tab -- zum Teil zusätzliche Optionen
      keystroke tab -- im Dialog zur Verfügung stehen.
      keystroke tab
      keystroke space -- Öffnet das Menü
      keystroke "s" using {command down}
      -- Dafür habe ich in den Systemeinstellungen
      -- eine Tastenkombination ergänzt. Die
      -- funktioniert aber nur, wenn das PDF-Menü
      -- im Drucken-Dialog bereits aufgeklappt ist.
      
      keystroke … -- Steuerung des Sichern-Dialoges
      
      
   end tell
end tell


Lässt sich der Menü-Punkt "Als PDF sichern…" unter 10.4.3 nicht direkt ansprechen? Oder wie geht das?
Alternativ: Wie kann ich mit keystroke die Pfeiltasten ansprechen? Down, Pagedown und ähnliches funktionieren nicht.

Danke,
fridolin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
hweber
•--->
•--->


Anmeldedatum: 01.02.2004
Beiträge: 397

BeitragVerfasst am: 16.12.2005 - 21:16    Titel: Antworten mit Zitat

wenn wir wüßten, wie der drucken-dialog direkt mit as angesprochen werden kann, wären viele benutzer zufriedener

Zitat:
: Wie kann ich mit keystroke die Pfeiltasten ansprechen?


jede taste kann kann auch an stelle von keystroke durch
Code:
key code ascii-code-des-zeichens

ersetzt werden.

aus manchen anwendungen geht bei mir auch folgendes im sichern dialog:
Code:
set file_name to "mein.txt"
kystroke file_name

aber es geht nicht immer, ich weiß nicht warum
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
fridolin
•->
•->


Anmeldedatum: 16.12.2005
Beiträge: 9

BeitragVerfasst am: 16.12.2005 - 21:21    Titel: Antworten mit Zitat

Allerdings haben die Pfeiltasten, so weit ich weiss, keinen ASCII-Code, weil ich damit ja keine Zeichen eingeben kann.

fridolin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
hweber
•--->
•--->


Anmeldedatum: 01.02.2004
Beiträge: 397

BeitragVerfasst am: 16.12.2005 - 21:43    Titel: Antworten mit Zitat

zb bei mir pfeil nach
unten = key code 125
hoch = 126
links = 123
rechts = 124

eine seite nach oben = 116
unten = 121

pos1 = 115
ende = 119
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
fridolin
•->
•->


Anmeldedatum: 16.12.2005
Beiträge: 9

BeitragVerfasst am: 16.12.2005 - 22:05    Titel: Antworten mit Zitat

Danke, funktioniert.

Ich hätte bei key code 125 allerdings eine geschweifte Klammer zu erwartet: }
Aber da bringe ich wohl was durcheinander? Confused

fridolin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
roser
•-->
•-->


Anmeldedatum: 29.09.2003
Beiträge: 61
Wohnort: Solingen

BeitragVerfasst am: 19.12.2005 - 09:19    Titel: Ich danke euch für dieses Thema. Antworten mit Zitat

Habe es jetzt endlich geschafft, in FileMaker Pro 7, als extern ablaufendes Skript, ein Dokument faxen zu lassen.

Nur hatte ich erst vollkommen übersehen, dass man außer unter "Bedienungshilfen" - "Hilfsgräte zulassen" auch unter "Tastatur & Maus" - Reiter "Tastatur-Kurzbefehle" auch den Punkt "Alle Steuerungen" anwählen muß.

Jetzt rennt jeder Dialog wie Sau. Danke.

Habe dazu jetzt aber noch eine Frage:
Wie kann man per AS diese Einstellungen ("Bedienungshilfen" - "Hilfsgräte zulassen" und "Tastatur & Maus" - Reiter "Tastatur-Kurzbefehle" - "Alle Steuerungen") abfragen, bzw. besser noch: setzen, also per AS einstellen, so dass der Anwender dies nicht per Hand durchführen muß?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Snow
Administrator
Administrator


Anmeldedatum: 21.11.2000
Beiträge: 1955
Wohnort: Deiningen

BeitragVerfasst am: 19.12.2005 - 20:14    Titel: Antworten mit Zitat

Hallo roser,

ich verwende für GUI-Skripts folgendes Template, das prüft, ob "Hilfsgeräte aktivieren" auch wirklich aktiv ist:

tell application "System Events"
    if (system attribute "sysv") < 4144 or UI elements enabled then
        tell application "System Events"
            activate
            --
Zielprogramm in den Vordergrund bringen
        end tell
        
try
            tell process "System Events"
                -- Anweisungen an das Zielprogramm
                
keystroke "m" using command down
            end tell
        end try
    else
        tell application "System Preferences"
            activate
            
set current pane to pane "com.apple.preference.universalaccess"
            
beep
            
display dialog "GUI Scripting is not enabled." & return & return & "Check \"Enable access for assistive devices\" in the Universal Access preference pane (authentication is required), then run this script again." with icon stop buttons {"OK"} default button "OK"
        end tell
    end if
end tell


Per AppleScript einschalten geht nicht, da die Systemeinstellungen selbst nicht scriptable sind. Für "Alle Steuerungen" weiß ich leider auch keine Abfrage - habe das noch nie benötigt.
_________________
Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
roser
•-->
•-->


Anmeldedatum: 29.09.2003
Beiträge: 61
Wohnort: Solingen

BeitragVerfasst am: 20.12.2005 - 11:10    Titel: Ok. Habe ich so weit verstanden. Antworten mit Zitat

Aber wie kommst du denn dann per AS in den Fax-Dialog unter Tiger und dann auch noch in das Eingabefeld für die Faxnummer?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
fridolin
•->
•->


Anmeldedatum: 16.12.2005
Beiträge: 9

BeitragVerfasst am: 20.12.2005 - 20:04    Titel: Antworten mit Zitat

Jetzt habe ich ein Script, das folgende Schritte ausführt:

Dokument öffnen
Dokument als PDF sichern
Dokument schliessen
... und das mit einer Schleife über einen ganzen Ordner samt Unterordnern.

Einen Schwierigkeit gibt es noch:

Ich kann das Dokument zwar schliessen mit:

Code:
tell application "System Events"
      tell process "Word"
         set frontmost to true
         keystroke "w" using {command down}
      end tell
end tell


alternativ mit:

Code:
tell application "Microsoft Word"
      close document 1 saving no
end tell


Aber: Der Befehl darf erst kommen, wenn das Sichern abgeschlossen ist und die dazugehörigen Meldungen geschlossen sind.

Ich habe das probiert, indem ich zuerst den Namen des Dokumenten-Fensters als theName gespeichert habe und dann folgende Schleife in des Script eingefügt habe:

Code:
repeat while theFlag is false
      delay 1
      tell application "System Events"
         if theName & ".doc" is name of window 1 of process "Word" then
            set theFlag to true
         end if
      end tell
   end repeat


Auf diese Schleife folgt dann der Befehl, das Fenster zu schliessen.

Problem: Die Schleife wird endlos durchlaufen, bis ich durch Mausklick eine andere Anwendung als Word in den Vordergrund hole (Finder, Scripteditor, ...). Umgekehrt muss Word im Vordergrund bleiben, solange der Teil zum Sichern als PDF läuft, sonst kommen die Scriptbefehle an die UI ja nicht an.

Jemand eine Idee, wie das zu lösen wäre?

Einfach mit delay zu arbeiten, kommt nicht in Frage, weil ich erstens nicht weiss, wie lange das längste Sichern als PDF braucht, und zweitens, weil ich bei mehreren 1000 Dokumenten das Script nicht unnötig warten lassen will.

Danke für Hinweise
fridolin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1529
Wohnort: Olten-CH

BeitragVerfasst am: 20.12.2005 - 20:13    Titel: Antworten mit Zitat

fridolin hat Folgendes geschrieben:
Bisher ist es mir nur über keystroke gelungen ...


Question save as PDF

möglich über "do Visual Basic"?
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 21.12.2005 - 22:01, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
fridolin
•->
•->


Anmeldedatum: 16.12.2005
Beiträge: 9

BeitragVerfasst am: 20.12.2005 - 21:56    Titel: Antworten mit Zitat

Auf die Weise kann ich die Datei speichern, was dem Weg über den Sichern-Unter-Dialog vergleichbar ist. Aber ich sehe nicht, dass ich so ein PDF-Dokument erzeugen könnte.

fridolin
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
spirigwi
•----->
•----->


Anmeldedatum: 10.07.2003
Beiträge: 1529
Wohnort: Olten-CH

BeitragVerfasst am: 20.12.2005 - 22:24    Titel: Antworten mit Zitat

danke
_________________
 Skript-Fan => ein � -Fan =>Scr¿¿-KongFuSius_Kurpfusius


Zuletzt bearbeitet von spirigwi am 21.12.2005 - 22:02, insgesamt 2-mal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
hweber
•--->
•--->


Anmeldedatum: 01.02.2004
Beiträge: 397

BeitragVerfasst am: 20.12.2005 - 22:44    Titel: Antworten mit Zitat

@snow
Zitat:
Für "Alle Steuerungen" weiß ich leider auch keine Abfrage - habe das noch nie benötigt.


Ich benutze das z.B. um beim UI-scripting per tab, space, return usw. alle Felder erreichen zu können.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Snow
Administrator
Administrator


Anmeldedatum: 21.11.2000
Beiträge: 1955
Wohnort: Deiningen

BeitragVerfasst am: 20.12.2005 - 23:31    Titel: Antworten mit Zitat

hweber hat Folgendes geschrieben:
Ich benutze das z.B. um beim UI-scripting per tab, space, return usw. alle Felder erreichen zu können.


Wofür diese Einstellung dient, war mir schon klar - aber wie gesagt, benutzt habe ich sie noch nicht. Ich muss dazu sagen, dass ich womöglich einen großen Bogen um GUI-Scripting mache. Es macht mir einfach keinen Spass. Und bisher war noch nicht viel so wichtig, als dass ich unbedingt ein GUI-Script gebraucht hätte. - Natürlich kann es für jemanden anderen sehr wichtig sein, für mich persönlich spielt es aber eine sehr, sehr untergeordnete Rolle.
_________________
Peter
-
Fischer-Bayern.de|Shadetreemicro.com
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen AIM-Name
hweber
•--->
•--->


Anmeldedatum: 01.02.2004
Beiträge: 397

BeitragVerfasst am: 20.12.2005 - 23:42    Titel: Antworten mit Zitat

hätt' mich auch gewundert
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Fischer-Bayern.de Foren-Übersicht -> AppleScript X Alle Zeiten sind GMT + 2 Stunden
Gehe zu Seite 1, 2, 3  Weiter
Seite 1 von 3

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de


AppleScript für absolute Starter