• 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: QuarkXPress 6 Spread Finder
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: QuarkXPress 6 Spread Finder


  • Subject: Re: QuarkXPress 6 Spread Finder
  • From: Jason Bourque <email@hidden>
  • Date: Tue, 06 Jul 2004 20:18:33 -0400

Hans,

This is great, 32 times faster. Why does the do script method run faster?
Does this trick work for other apps?

Thanks,

Jason Bourque

On 7/3/04 5:18 PM, "Hans Haesler" <email@hidden> wrote:

> On Thu, 24 Jun 2004, Jason Bourque wrote:
>
>> I wrote this script to find what spreads in a document was a spread
>> (has graphics or text boxes that span both pages.) It is kinda slow.
>> Any ideas on making it faster?
>
> Hello Jason,
>
> sorry for the delay. I've been on vacation.
>
> Your script will run much faster with the 'do script' method.
> Then there are other modifications which will contribute
> a little to make it faster.
>
> - unselect an eventual selection
> - don't build lists of each box type but address the 'generic boxes' directly
> - set the bounds of the current box in the items of a list
> - don't set the variables 'vTest1', 'vTest2', 'vTest3', but make
> the test directly
> - use 'set end of ...' (instead of 'copy vNth to end of ...')
>
> ---
> tell application "QuarkXPress"
> if not (exists document 1) then error "No document is open."
> set selection to null
> do script {checkSpreads}
> end tell
>
> script checkSpreads
> tell document 1 of application "QuarkXPress"
> set vLeft to 8
> set vRight to 9.5
> set vPagesList to {}
> repeat with vNth from 1 to count of spreads
> tell spread vNth
> repeat with vNth2 from 1 to count of generic boxes
> set {y1, x1, y2, x2} to bounds of generic box vNth2 as list
> set BoxB to (x1 as inch units) as real -- Left
> set BoxD to (x2 as inch units) as real -- Right
> if (BoxB is less than vLeft) and (BoxD is greater than vRight) then
> set end of vPagesList to vNth
> exit repeat
> end if
> end repeat
> end tell
> end repeat
> end tell
> return vPagesList
> end script
> ---
>
> Hans Haesler <email@hidden>
> _______________________________________________
> applescript-users mailing list | email@hidden
> Help/Unsubscribe/Archives:
> http://www.lists.apple.com/mailman/listinfo/applescript-users
> Do not post admin requests to the list. They will be ignored.
_______________________________________________
applescript-users mailing list | email@hidden
Help/Unsubscribe/Archives: http://www.lists.apple.com/mailman/listinfo/applescript-users
Do not post admin requests to the list. They will be ignored.


  • Follow-Ups:
    • Re: QuarkXPress 6 Spread Finder
      • From: Hans Haesler <email@hidden>
References: 
 >Re: QuarkXPress 6 Spread Finder (From: Hans Haesler <email@hidden>)

  • Prev by Date: Re: Getting the default language with AppleScript
  • Next by Date: Re: Getting the default language with AppleScript
  • Previous by thread: Re: QuarkXPress 6 Spread Finder
  • Next by thread: Re: QuarkXPress 6 Spread Finder
  • Index(es):
    • Date
    • Thread