3 votes

Utilisation d'AppleScript pour changer la couleur du texte dans Keynote

Je suis fatigué de cliquer sur la roue des couleurs pour obtenir des couleurs personnalisées et j'aimerais utiliser AppleScript pour automatiser avec BTT un simple bouton pour changer la couleur du texte sélectionné selon un ensemble de normes de l'entreprise. J'ai pu aller jusqu'à ouvrir le sélecteur de couleurs dans Keynote avec AppleScript, mais je n'arrive pas à trouver comment cliquer sur le crayon. Voici ce que montre l'inspecteur d'accessibilité : Color picker Blueberry pencil

C'est mon code jusqu'à présent, mais la sélection pour cliquer sur le crayon Blueberry continue de se plaindre que

System Events a reçu une erreur : Impossible d'obtenir la fenêtre "Text Color" du processus d'application "Keynote".

tell application "System Events"
    tell process "Keynote"
        tell radio group of toolbar of window 1
            -- This prevents it from toggling the button when already selected
            if value of radio button "Format" = {{0}} then
                click radio button "Format"
            end if
        end tell
        tell scroll area 1 of window 1
            click color well 1
        end tell
    end tell
    tell application "System Events"
        tell window "Text Color" of application process "Keynote"
            tell splitter group 1
                tell radio group "Pencils"
                    click radio button "Blueberry"
                end tell
            end tell
        end tell
    end tell
end tell

Tout conseil serait très apprécié.

1voto

user3439894 Points 52496

Sur Keynote si je sélectionne quelques texte et exécutez ce qui suit exemple AppleScript code El couleur de la texte est réglé sur Myrtille :

activate application "Keynote"
tell application "System Events"
    tell application process "Keynote"
        tell window 1
            tell radio group of toolbar 1
                if value of radio button 1 = {{0}} then
                    click radio button 1
                end if
            end tell
            click color well of scroll area 1
            click button 5 of toolbar 1
            click radio button 33 of radio group 1 of splitter group 1
            click button 1
        end tell
    end tell
end tell

Si vous voulez utiliser le nom de la couleur du crayon au lieu de la numéro de bouton radio puis changer :

click radio button 33 of radio group 1 of splitter group 1

A :

click (every radio button of radio group 1 of splitter group 1 whose description is "Blueberry")

       Conseil : Passez la souris sur l'écran et faites défiler horizontalement pour voir l'intégralité de l'image. code .

Vous pouvez alors substituer n'importe quel couleur du crayon pour un autre couleur puis "Blueberry" .

Note : Le site exemple AppleScript code a été testée et a fonctionné, telle quelle, sur ma Mac en cours d'exécution MacOS High Sierra et Keynote version 8.1 (5683).


Note : Le <em>exemple </em><strong>AppleScript </strong><em>code </em>est juste cela et ne contient pas de <em>gestion des erreurs </em>le cas échéant. C'est à l'utilisateur qu'il incombe d'ajouter toute <em>traitement des erreurs </em>selon ce qui est approprié, nécessaire ou souhaité. Consultez le <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_control_statements.html#//apple_ref/doc/uid/TP40000983-CH6g-129232" rel="nofollow noreferrer"><strong>essayez </strong></a><em>déclaration </em>et <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_control_statements.html#//apple_ref/doc/uid/TP40000983-CH6g-129657" rel="nofollow noreferrer"><strong>erreur </strong></a><em>déclaration </em>dans le <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/introduction/ASLR_intro.html" rel="nofollow noreferrer"><strong>Guide du langage AppleScript </strong></a>. Voir aussi, <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_error_xmpls.html#//apple_ref/doc/uid/TP40000983-CH221-SW1" rel="nofollow noreferrer"><strong>Travailler avec des erreurs </strong></a>. En outre, l'utilisation de la <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_cmds.html#//apple_ref/doc/uid/TP40000983-CH216-SW10" rel="nofollow noreferrer">retarder </a>une commande peut être nécessaire entre les événements, le cas échéant, par ex. <code>delay 0.5</code> avec le <em>valeur </em>de la <em>retarder </em>définis de manière appropriée.

0voto

Mockman Points 847

Keynote prend en charge les scripts permettant de modifier la couleur (ainsi que la taille et la police) du texte, ce qui vous permet d'effectuer des modifications sans vous appuyer sur les scripts de l'interface utilisateur.

Il utilise un modèle RVB dans lequel vous fournissez un nombre de 16 bits pour chaque couleur. Ces valeurs peuvent être obtenues en multipliant la valeur RVB par 257. Par exemple, la couleur Blueberry a une valeur de {0, 0, 255} ; multipliez-la par 257 et vous obtenez la valeur {0, 0, 65535} ci-dessous. À l'inverse, si vous divisez chacune des couleurs "texte ajouté" {25441, 10793, 42404} par 257, vous obtenez 99/42/165 (ou #632AA5).

tell application "Keynote"
    tell slide 1 of document 1
        --Title
        set the color of object text of the default title item to {0, 0, 65535}
        set the font of object text of the default title item to "Impact"
        set size of the object text of default title item to 54

        --Body
        set the color of object text of the default body item to {8481, 32896, 16704}
        set the font of object text of the default body item to "Impact"
        set size of the object text of default body item to 36

        --Added text
        set color of the object text of text item 3 to {25441, 10793, 42404}
        set the font of object text of the text item 3 to "Impact"
        set size of the object text of text item 3 to 24
    end tell
end tell

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X