• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: Illustrator Scripting
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Illustrator Scripting


  • Subject: Re: Illustrator Scripting
  • From: Steven Valenti <email@hidden>
  • Date: Fri, 11 Mar 2005 14:37:36 -0500

I need this to run in Adobe Illustrator 10. It compiles but errors on your "set x to..." line.

Adobe Illustrator 10 got an error: Can't make some data into the expected type.


Anything that would make a difference between versions?
There are 2 compound path items and 1 path item in a document. I need to move the compound path item that has the color Pantone 871 C to be in the back.
Thanks,
Steven
Sorry guys, didn't mean to send email 3 times. Was getting getting it back as undeliverable.


On 11 Mar 2005, at 6:51 pm, I wrote:


I'm trying to grab a compound path item with a spot color of "Pantone
871 C" and move this item to the back. How can I write this so it will
only move the compound path that has this color fill property?


Compound path items don't have a fill color, only path items do. So you need to find path items of compound path items whose spot color is "Pantone 871 C", like this.

tell application "Illustrator CS"
set x to path items of compound path items of layer 1 of document 1 whose name of spot of fill color of it is "PANTONE 871 C"
repeat with i from 1 to x's length
move (container of item i of x) to end of layer 1 of document 1
end repeat
end tell

This version is more robust and won't try to move compound path items that have already been moved.

tell application "Illustrator CS"
set x to path items of compound path items of layer 1 of document 1 whose name of spot of fill color of it is "PANTONE 871 C"
set movedItems to {}
repeat with i from 1 to x's length
set c to container of item i of x
try -- nasty workaround to store a unique reference to the compound path item in the list of compound path items already moved (movedItems)
c as string -- will always error
on error m -- "Can't make «class caCP» 1 of «class caLY» 1 of document 1 of application "Illustrator CS" into a string."
set cStr to m -- «class caGP» 1 of «class caLY» 2 of document 1
end try
if cStr is not in movedItems then -- we haven't already moved the compound path item
move c to end of layer 1 of document 1
set end of movedItems to cStr
end if
end repeat
end tell


Simon
 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Applescript-users mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden

  • Follow-Ups:
    • Re: Illustrator Scripting
      • From: Simon Topliss <email@hidden>
  • Prev by Date: Re: Illustrator Scripting
  • Next by Date: Re: Script for the monitor pref pane
  • Previous by thread: Re: Illustrator Scripting
  • Next by thread: Re: Illustrator Scripting
  • Index(es):
    • Date
    • Thread