This content has been marked as final. Show 7 replies
Have a look there:
I never was able to make it work...
Otherwise, the solution is Indesign Server for "headless" processing.
Thank you Eric for providing this interesting reference!
In fact faceless documents don't perfectly apply to my situation in which the user has to interact with the contents of a document, i.e. select graphics objects. What I should like to see is suppressed re-drawing of selected graphics objects during a sequence of changes.
Perhaps my computer is simply too slow so that a sequence of changes appears as distinct object positions and not as the final one...
I'm not aware of any way to "lock" the redraw process, that would be a nice thing to have!
I'm not sure if there could be a benefit performance wise or if it would answer a bit your needs, but you could try something like this wich would emulate a bit what you are looking for:
Make every layer invisible
do the processing
Make every layer visible
That should result in just one big blink. Knowing your object your could also just hide the specific item you are working on and show it back when the process is done.
The only bad side is if you script crash for any reason (say, you forgot to handle a special case), that could leave the document in a undetermined state. For this, the layer hiding would be a better approach as the user can at least make the layer visible again through the interface (but could not on a page item basis). Depending on the processing that is done, often a revert is the best solution for a crashing script!
ps: the headless mode look like a deprecated feature (in cs2/cs3?)... but strangely still is in the dictionary.
thank you for two really promising approaches to solving my little problem.
I shall give both (layer and item hide & show) a try and report later on the results and further decisions.
Thanks for your help!
just to keep you informed:
set visible of item layer of (the_frame) to false
do the processing
set visible of item layer of (the_frame) to true
The only drawback is, that my graphics object needs to be inline with the text thus resulting in a short blank of the whole page contents (text and graphics object are in the same layer). This however is at least as annoying as the sequence effect...
What I could not yet figure out is how to hide & show only the graphics item.
Any ideas of how to hide & show a single defined item?
Have a look in dictionary if there is a visible attribute accessible for Page Item. I know there is the non-printing one, but that's for other purpose...
With most environnement, a typical trick to go against the lack of control on the screen update (aside double buffuring) is to move the objects offscreen.. say at position -10000, -10000. From what i remember i doesnt work with Indesign as you get the "object out of spread" error (unless i'm confusing with Quark!).
There maybe exist variation of the same idea... depending on the operation, you could make the boudings of the box to something like 0,0,1,1, do the transformation and bring the bounding box where it should be.
ps: Personnaly, i would not put as much effort on hidding the problem... is it because it's bothering you or your script users?
thanks for your never ending and excellent input!
In referring to: "Have a look in dictionary..."
Well, I searched it rather thoroughly but didn't find any promising keywords.
In referring to your postscriptum I agree:
The whole issue is one of aesthetics not function. The wiggling is not really bothering me but I tried at least to not confront users with it. Now that the discussed work-arounds won't considerably improve the situation I shall leave my code as is.
If you are interested to know what this is all about:
I nearly finished a suite consisting of three AS-apps (Mac OSX) that rather seamless integrate equation editing with MathType and "InDesign CS3". Presently, i'm in the phase of code polishing...
Thanks again and have a good day!