I want to make a video infographic for a few different video orientations (square, 16:9) and I want to highlight visually the very large amount of icons (thousands in once case which would obviously be tiny dots).

I know how to align objects manually, but is there some kind of automated way where I could draw a rectangle, put all my objects within that rectangle and have them disperse out equally?

Even if there was a program outside of Adobe that would at least help me quickly change my bounding area (rectangle) and have it show me how many rows/columns... Then, I could at least manually align in Illustrator fairly quickly.

My problem is I won't have time to keep manually trial & erring to make sure the icons fit nicely on the different screen orientations/portions of the screen without a little help from some software.

Say my number is 2,000, I would love to able to paste 2,000 of my icons within a rectangle or artboard and get this:

enter image description here

Even better if I could just type 2,000 in a dialogue box and have them disperse.

Appreciate any help!

  • I assume you are using Illustrator based off what I could see, correct me if I'm wrong. – WELZ Dec 3 at 22:54
  • Illustrator and After Effects, yes. – WellHello Dec 4 at 15:05

Your question is:

How to create an Automated Contact Sheet in Illustrator

The answer, using this script from Iconifyit: icon-contact-sheet.js

This script will create a contact sheet of vector objects from a folder structure that you specify.

Inputs:

  • Page Width: The width of the contact sheet in pixels
  • Page Height: The height of the contact sheet in pixels
  • Column Width: The width of the columns in pixels
  • Row Height: The height of the rows in pixels
  • Scale: The percentage (100 = 100%) to scale the objects being placed

After installed in the Scripting folder, and launching Illustrator, from the menu File, Scripts, open the Contact Sheet Script.

This is the user window:

script window

And this is the result:

Contact sheet

Make a file with the defined page width and height, the number of columns and rows and the icons.

Could use Illustrator....

  • Draw a rectangle the size of the total area you wish to fill....
  • Choose Object > Path > Split into Grid
  • Enter number of rows and columns

When you click Okay, you get a grid of rectangles evenly distributed.

You cold then align to those rectangles. For different sizes merely use the same amount of rows and columns on different sized rectangles.

enter image description here

(2,000 is not an equally distributed number, 1980 or 2024 are. Square root the total number of items... [this gives number of rows and columns to use] if the integer for the square root is not an even number, objects won't distribute evenly in the grid.)

I know the next question would be how to align objects to each rectangle automatically. You'd need scripting to do that.

However, placing one object at the start of a row, and one at the end. And then a number equal to (total columns - 2) between them - aligned or not - would then allow you to merely use the align and distribute options within Illustrator for each row, rather than aligning every single object to cell. Doing this vertically for the end columns, then horizontally for the rows would be pretty quick, but yes, slightly tedious. Not nearly as bad as doing each end every rectangle though.

And.. if the varying sizes are merely widths, as in video, you can move an end column and then merely redistribute the rows to fill a different width. No need to do it all over and over. So I'd start with 4:3... align everything. Move one end column to be the width for 16:9, redistribute rows.... Move an end column to be the width of 16:10... redistribute rows, etc.

But.. ultimately I would not imagine it's impossible to find a script which does some of this. I just haven't done any searching for such an item. A very rudimentary Google search finds this and this. But I have no idea how workable they may be for your circumstances.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.