Extension du domaine de la table de montage
October 24, 2012 | Snippets | fr | en
Les hasards de notre métier nous conduisent parfois à manœuvrer des objets excentriques, mordant allègrement sur la table de montage. InDesign magnanime nous laisse apercevoir les régions inscrites dans le cadre blanc, mais tout au-delà est froidement censuré.
Bien sûr on peut encore s'emparer de tels objets, contempler leur cadre de sélection :
…deviner leur contenu reste néanmoins un sport d'élite !
La première solution qui traverse l'esprit d'un utilisateur raisonnablement averti consiste à augmenter les marges de la table de montage. Après tout, tel est le propos de la rubrique « Options de la table de montage » dans le panneau Préférences > Repères et table de montage. Bon, d'accord, mais tout cela ne manque-t-il pas d'originalité ?
InDesign CS5 et ultérieur ouvre la voie à d'autres sorcelleries : sitôt que nous positionnons un repère au-delà du bornage officiel de la table de montage — opération infaisable manuellement, mais scriptable — InDesign réajuste comme par enchantement l'espace visible :
Cette propriété aussi remarquable que méconnue m'a fourni l'ingrédient du script PasteboardExpander, qui révèle toutes les zones invisibles de la planche active lorsque des objets se déploient dans les confins de la table de montage. La partition tient en quelques lignes quand on s'amuse à la compacter :
// InDesign CS5/CS5.5/CS6 // ===================================== (function(s,a,m,f,i,x) { (s=s[a][f+'Window'])&& (s=s[a][f+'Spread'])&& ( // Prevent 'locked guides' issues! // --- app.documents[x]().preferences[x](). properties={guidesLocked:false}, // Retrieve the page bounds // --- a=s.pages[x]().bounds, // Min-max algo on page bounds // --- m=[m,m,-m,-m], (f=function(v,t) { while(t=a.pop(i=4)) while(i--) (t[i]<m[i])^(i>>1)&&(m[i]=t[i],m[~i]=v) })(), // Min-max algo on page items bounds // --- a=s.pageItems[x]().visibleBounds,f(1) ) // OK, create the guides where needed // --- while(i--)m[~i]&& s.guides.add({location:m[i], orientation:1&i?1986359924:1752134266}) })(app,'properties',1/0,'active',0,'everyItem');
Que la lumière soit !
Comments
Thanks a lot, useful script!
Cool !
Il m'arrive parfois d'avoir des soucis de ce genre suite à une rotation, ou lors d'importation…
Voilà de quoi y remédier.
Merci Marc :)
Très sympa comme découverte et encore plus sympas d'en avoir fait un script !
Merci.
Magnifique, ça évite de passer par les préférences.
Merci! Ce script est très utile pour moi.
----
Thanks, this script is very useful.
Nice script, Marc! I didn't know that you could extend the pasteboard of a spread like this. I can use this to create some temporary sketching space to draw a graph or whatever, or to set a landscape table (rotating a spread is a hassle).
Thanks,
Peter