2013-07-03 4 views
1

Mon script doit sélectionner certains éléments et appliquer Effet-> 3D-> Extruder & biseau pour eux. Quels objets et méthodes devraient être utilisés?Scripting Adobe Illustrator. Comment appliquer un effet?

J'utilise JavaScript dans AI CS6.

Merci.

- Mise à jour: J'ai besoin de définir les valeurs pour les paramètres d'effet (angles, profondeur, etc.) dans le script. Mise à jour 2: Il est probablement possible de patcher un fichier AI avec les valeurs nécessaires pour le GraphicStyle, puis de l'ouvrir et d'appliquer le style si nécessaire. Mais j'aimerais savoir s'il y a moins de solution sale.

Répondre

0

En utilisant documents[0].selection[0].reflect.properties dans la boîte à outils ExtendScript pour connaître les propriétés des chemins de base, je ne vois aucun moyen de définir directement cet effet.

Lorsque je recherche le JavaScript Reference for Illustrator, la seule mention que je vois de l'apparence est quand il parle de styles graphiques.

Alors que j'ai essayé dessinait deux rectangles, l'application de l'effet 3D à l'un d'entre eux, et l'enregistrer comme un nouveau style graphique:

enter image description here

Ensuite dans le script, vous pouvez sélectionner l'autre rectangle, puis appliquer le style graphique avec

documents[0].graphicStyles[6].applyTo(documents[0].selection[0]) 

enter image description here

enter image description here

Malheureusement, la documentation ne dit

Scripts ne peuvent pas créer de nouveaux styles graphiques.

Une chose qui pourrait être le travail serait de distribuer un document avec le script qui a tous les styles graphiques que vous pourriez vouloir appliquer, puis les appliquer à des objets dans le document cible ...

+0

Merci, mais J'ai besoin de définir les valeurs pour les paramètres d'apparence dans le script (désolé, ma question était ambiguë). – svoyski

+0

@svoyski Eh bien, il devrait être possible d'écrire un [plug-in Illustrator] (http://www.adobe.com/devnet/illustrator/sdk.html) qui envoie des messages 'kCallerAIFilter/kSelectorAIGoFilter' au plugin Extrude & Bevel, et votre plugin devrait être capable d'exporter ses fonctionnalités via l'interface de script afin que JavaScript puisse faire la même chose ... mais cela semble être beaucoup plus de travail que votre idée de patcher le fichier .AI avec les valeurs dont vous avez besoin. – andrewdotn

Questions connexes