When I started scripting, about a year ago, I was really frustrated that app.selection didn’t returned correct selection order I used while selecting objects, instead, it returned sorted selection by object ID’s. To make things even worse, just few versions back, app.selection DID returned correct selection order! So, somebody messed things really bad! :-(
This is wonderful news especially for InDesign users! So, what’s new in this mid-cycle release?!
Let’s list most important ones:
- EPUB Export Improvements
- Style Mapping
- Articles Panel
- Linked Stories
- Object Export Options
- DPS Tablet Features
- Easier Anchored Objects
Also, bunch of old bugs from previous releases are corrected! But, that’s not all! Some CS5 users were frustrated with frame edge highlighting! Now in CS5.5 you are CAN turn it OFF! Woohoo! I will not go into details about features and stuff, because there is so many places where you can find info and I’ll list some of them:
- Introducing Adobe Creative Suite 5.5 Product Family by Adobe
- What’s new in CS5.5 by Adobe TV
- Adobe CS5 Evolves: Digital Publishing from InDesign to Tablets Gets Better by Terry White, Worldwide Creative Suite Design Evangelist for Adobe
- InDesign CS 5.5 Announced: New Features, Subscription Pricing by InDesignSecrets.com
- Adobe Upgrades Nine Products to CS5.5 by CreativePro.com
- CS5.5 & Any Screen by Cari Jansen
Thank you Adobe for making our creative work easier
with such a awesome and creative tools!
As you probably know, layers really important when creating complex layouts. Layers in last version of InDesign (CS5) are radically improved! Till now, you could just manage top-level layers, but starting with CS5, top-level layers can be expanded and you can see complete object structure! (for more info about layers in CS5, read great article written by Steve Werner on InDesignSecrets [Hidden Gems: The Layers Panel in CS5]) That’s really great! But, main limitation is that we are not able to set “default” layers for every new document. But! That’s why we have scripts! :D
But, if you have bunch of links, you need to sort them first, select just embedded ones and then click Unembed Link from Links panel menu, or from context menu. But, it can be done much more easily with help of short script! Let’s see how! :)
Keyboard shortcuts are a big time saver! And when I say big, I mean BIG! :D I love shortcuts, and by time, they become part of you, and your everyday workflow! But! It’s becoming difficult to remember all shortcuts when you use more than one program, and I know you do! So, I decided to create nice little interactive shortcuts guide and to be even better, I wanted to use just InDesign‘s interactive features!
So, what’s so special about this “new version”?
Like I said, it’s new year, new beginning, I’m full with new ideas, and I hope that this year will be awesome like last was, so, here is another really cool script that will help you overcome BUG which was mentioned here: Auto Apply Object Style to Placed Image. :D
Also, you will not need special “Place Fun Frame” Object Style to apply desired object style while placing objects, and you will be able to even select different while placing multiple objects. Really?! Well, yes, I hope so! :D
When building complex scripts with lot of options that user can choose, it’s always great to allow user to also save selected settings and reuse them on next launch. We already discussed about this topic in earlier post [Saving script data within document] but I recently found better way for serializing and storing data.
In first post, I used simple “*” to separate multiple values, and at load time used split(*) to separate values back to Array. That’s not bad, and it’s working fine, but there is another much more elegant solution!
I created short sample to demonstrate usage and shortly explain how it works. Of course, you can extend it as you wish! So, let’s get started! :D
Counting words and also paragraphs, stories, characters is something pretty easy to achieve, but very often done in wrong way. Most of the time, people are looping through stories, text frames, paragraphs and adding word count. That is OK, for short documents, with short stories, but as document length increases, script needs more and more time to loop through all stories, and get all words. People are forgetting about awesome method called everyItem! Method remained undocumented until InDesign CS3, but scripting experts such as Dave Saunders had already pointed out its forcefulness and already knew how to exploit it. It allows us to get all elements within collection. For more info about everyItem method be sure to check two awesome articles by Marc Autret: On ‘everyItem()’ – Part 1 and On ‘everyItem()’ – Part 2. So, let’s take a look how everyItem method can help us count stuff. :)
Hey people! How are you?! :D
As you probably noticed, I’m not posting that much on blog last month or two. One of the reasons is that I’m preparing to take Adobe Certified Expert (ACE) exam, so I’m studying hard! First thing I asked myself is how to prepare for exam, what I have to know? Well, if I want to have that last letter E (expert) than I have to know all about InDesign, to have it in my little finger :D
After long time here comes new post about InDesign scripting! :D
This one is really cool and handy. Simply select files and script will load them directly into PlaceGun tool! Really simple and handy! Also there are some options that you can set while loading files into PlaceGun, but we will just focus on simple loading. One more thing. InDesign CS5 DOM introduced new class that is directly connected to PlaceGun. It has some more options like: abortPlaceGun and rotate among others. So, let’s get started! :D
Almost every media file contains info about it’s contents. Adobe’s XMP (Extensible Metadata Platform) is, as they say, “a labeling technology that allows you to embed data about a file, known as Metadata, into the file itself”.
This was text part for first post about reading and writing XMP data. Metadata is powerful and you can store all kind of data. Some most common used fields are: Document title, Author, Author Title, Description and Keywords.
So, I decided to create small panel that shows you number of currently selected objects. It will not count objects inside groups.
Hope you will find this panel useful and handy! :)
At last! Real ScriptUI manual is alive thanks to Peter Kahrel, all that wrapped up into search able PDF with example pictures on the side.
Here is part of announcement from Peter’s page:
Few days ago, my very good friend Martinho da Gloria posted picture that inspired me. It was picture of web of panel based web browser inside InDesign CS5! It was simple, just with address bar and page window, and I decided to expand it little bit more. I added back/forward, refresh, stop buttons, little menu with some useful links. Hope you will find it useful as much as I do! :-D
Subotica on IDUG (InDesign User Group) page [English]: http://bit.ly/idug_subotica
IDUG Subotica on Facebook [Serbian]: http://bit.ly/idug_subotica_fb
For more info send mail on: firstname.lastname@example.org
Do you need information about fonts used in your document(s)? Do you want to check is some fonts missing in a more than one file? You can do that with FontReporter®!
As you probably know, in CS5, it’s really pain to work with Script Label‘s, and there is no easy way to address objects by Script Label. In pre-CS5 versions of InDesign, with item() we’ve received element Script Label but in CS5 we receive element name from Layer‘s panel. Using script versioning we can achieve pre-CS5 behavior, but it’s not really safe. So, why not copy all existing Script Label‘s into Layer‘s panel element names? :D
Inspired by yesterday post about making Panel Names to Title Case, I made small script to help you enable/disable this feature (Easter Egg) through scripting. What script actually does? It checks if folder “noallcaps” exists in InDesign start up folder, and depending on our selection it creates/removes folder. I also added check for folder contents, so if there are files inside, folder will not be deleted.
You can download script here:
Have fun! :D
Are you annoyed with all panel names in All Caps?! There is really easy way to turn them into Title Case! Tested with InDesign and InCopy CS4 and CS5!
Be sure you check out Don’t Like All Caps in the Interface? Try This For Some Relief on InDesign Secrets website!
Have fun! :D
Few days ago on Adobe’s InDesign Scripting forum I found question about duplicating all anchored and inline objects to another layer. It’s quite simple task, and all we have to do, is to get all page items, and check item parent. If parent is Character, then it’s anchored/inline object. So, let’s take a look! :)
Storing data within InDesign document is possible with insertLabel() but there is another place to save information about document. As we know, all InDesign documents have metadata stored in file itself. For more info take a look at other Metadata related posts listed at the end.
We are able to insert our own data into Industry standard namespaces, but also we can create our own namespace, and insert data into it. We will go through few examples. So, let’s start! :)
Wanna insert text variable to text frame through scripting? No problem. It’s fast and easy! ;) Question about this showed up about one week ago on Adobe’s InDesign Scripting forum, and I was also curious how to do it. I don’t want to write much, so, let’s go down to business :D
A few days on Adobe’s InDesign Scripting forum I found question about inserting info into XMP InDesign file info. Also, mission was to find text formatted into specific paragraph style, and insert found content into XMP’s ‘Document Title’. Easiest way to achieve this is to use ‘Find’ and search for paragraph style. But, I also wanted to insert some more info into XMP like keywords or author, through scripting. So, I created document with some text from Adobe InDesign Features page, created two paragraph styles for Title and Author, and character style for keywords. So I formatted title and author with paragraph styles, and also I ran through text and formatted some words with ‘Keyword’ character style. So, let’s see how it works! :)