Indiscripts

Automating InDesign since 2009

Tag : PageItem

The Magic Parent Bounding Box

Now what is the geometry of that cell?Geometry in InDesign can get deadly complex. Take a document, create a frame, insert a table, change a particular cell into a “graphic cell,” convert its inner object into an ellipse, play with strokes, rotate and scale the object, transform the parent frame in the fanciest way. Then ask yourself the question: what are the exact coordinates, shape or area of the final table cell?…

Continue reading...

Drawing Sine Waves in InDesign [UPDATE]

Bézier curve approximation of sine waves

Computing Bézier curves that really look like sine waves is an exciting challenge for script developers. One needs to deal with both optimizing control points, transforming coordinate spaces and splitting curves. Here is a function that solves it all in ExtendScript for InDesign…

Continue reading...

Resizing vs. Rescaling in Equalizer

Equalizer for InDesign CS4/CS5/CS6/CCUser's question: “What's the difference between Multiply by and Rescale to in Equalizer? It looks like both functions have the same effect on the targeted frames of my document.” Very good question indeed! Let's reveal the little subtleties behind it…

Continue reading...

Clean up your Pasteboard! [UPDATE]

With CleanupPasteboard, let's get rid of the unnecessary objects left on the pasteboard

Continue reading...

Equalizer PRO 3.0 released!

How much do you spend on manually repositioning objects, resizing or adjusting all frames when your layout is changing? How many times did you need to move all main blocks by a given offset on every page? Or to reset the scale of every inner image? Think about the time you lost in repeating those daily boring tasks again and again, then take a giant step in loading Equalizer 3 in your InDesign toolbox. Batch positioning and resizing in InDesign is now as easy as clicking the Run button…

Continue reading...

Drawing Spirals in InDesign

Bézier curve approximations of Archimedean spirals

Continue reading...

New Features in Equalizer 3

While achieving Equalizer 3 I have implemented new—and old!—functionalities such as the Page Side Selector (so that you can manipulate right-sided pages only, for example) and (the much awaited return of) the Swap items feature. Here are a few snapshots of the next version…

Continue reading...

Introducing Equalizer 3 for InDesign CS4-CC (UPDATE)

Suppose you need to shift a bunch of text frames by 10mm from the central axis of your layout (10mm to the right for right-hand pages, 10mm to the left for left-hand pages). Or suppose you have to reset to 90% the height of every picture owned by your "Thumbnails" layer… over the whole document! Or imagine any other daily boring task that involves changing locations and/or dimensions of objects in a repeated way. Equalizer 3 is just a powerful tool for designers who want to save their phalanges.

Continue reading...

Introducing RagingHull for InDesign CS4-CC

Having fun with InDesign bounding boxes!

RagingHull, free script for InDesign CS4/CS5/CS6/CC)While studying bounding boxes and transformations I realized we could get nice patterns based on successive rotations applied to a given shape. As InDesign instantly determines the coordinates of the enclosing rectangle whatever the page item transform state, I had fun in drawing those boxes while varying strokes and angles. Jongware made similar experiments with its famous Spirographs script. RagingHull is just another free toy that reveals the bounds of a spinning object…

Continue reading...

How to Augment and Process Nested Groups (CS4-CS6)

Dealing with groups is a major headache for InDesign scripters. On one hand, the Group object has no injection method to offer, which makes difficult to append existing page items into a given group. On the other hand, although the Groups API exposes a promising add() method, nobody has ever managed to use this feature from any PageItem.groups area, so we seem doomed to perpetually rebuild groups from scratch.

Continue reading...

TotalRescale | Last-Minute Layout Adjustment

TotalRescale for InDesign CC/CS6/CS5 makes it easy to shift and/or rescale your layout.

Continue reading...

How to Detect a “Ghost Item”

A “ghost item” is an anchored / inline page item (text frame, spline item, etc.) which is temporarily hidden because its parent character is in an overset area:

Example of ‘ghost’ anchored item.

Continue reading...

Permutation d'objets dans InDesign (miniscript)

Non sans témérité, Stéphane Baril et David Deraedt nous ont récemment accueillis sur le plateau de Chips & Tips, la célèbre série d'Adobe TV dédiée à la diététique productivité. Au détour de cet épisode, Loïc Aigon et votre serviteur proposons une sorte de préambule aux techniques d'automatisation et de scripting dans la Creative Suite, avec quelques illustrations simples et directement accessibles aux néophytes. Vous y découvrirez notamment la version embryonnaire du script SwapItems utilisé pour permuter des objets dans une maquette InDesign…

Continue reading...

Equalizer | Let's Copy/Paste Coordinates in InDesign! [OBSOLETE]

This post is now obsolete. Please check out the new version of Equalizer. The old version for CS4 is still here.

Continue reading...

Work Around the Width/Height Gap

Believe me or not, the InDesign DOM can't return directly the width and the height of a page item frame! Scripting beginners may be confused about this gap. There are many pitfalls to be aware of when we deal with dimensions and units. Let's talk about bounds and coordinate spaces...

Continue reading...

Take a Walk on the Timeline

When he was working on the terrific Ibsen's “Brand” eBook, Klaus Nordby asked me for a little gadget to finish off the building of his work. He needed a “page-timeline-indicator” graphic at the bottom, which visualizes the exact place the reader is currently reading. So what the book designer wanted for Christmas (or before!) was a neat InDesign script which automatically calculates such a timeline walker and shows the input. Let us see how Klaus' prayer has been answered...

Continue reading...