Creating a calendar layout in Illustrator CS2

I decided to take some time this morning to make a monthly calendar spread for my new organizer in Illustrator. Similar to my weekly pages, I wasn’t going to put actual dates on the pages, but wanted to have a base layout that I could then fill in. So, basically, I wanted to make a bunch of squares on a page. Sounds simple! Here are the original specs that I had in mind for my calendar layout:

  • 8.5″ x 11″ sheet with two calendar layouts; I would cut the page in half, trim the edges (to match the other sheets in my organizer) and then hole-punch it
  • Rounded corner squares, 7 across, 5 down, to represent the weekdays of the month; no numbers — I would write them in by hand after printing them
  • A rounded corner bar at the top for the month

I recently had seen Veerle’s blog about using the Transform and Distort effect to make dynamic business cards in Illustrator, which was new to me. I was excited about trying out the technique for the calendar layout, because I could see how it would make it much easier to evenly space the squares for the calendar.

Here are the step-by-steps of what I did…

First, create a new 8.5″ x 11″ document in “portrait” orientation. Then, draw a guide to divide the page in half by clicking inside the top ruler, holding, and dragging downwards to the 5.5″ position (on the left ruler). This allows you to easily see the half of the page you want to work with.

Creating a guide

Now, select the Rounded Rectangle tool. You could draw a rounded rectangle by hand, but if you want to be more precise, Alt-click (PC) on the page and a dialog box will come up that allows you to enter in your own dimensions. I used 1.05″ x .85″, with a .1″ corner radius. Click OK to create the rectangle.

Creating rounded rectangle

If you want, you can set the properties of the rectangle. Mine has a white fill with a grey border. Now, move it to the printable edge of your document. I left some room above for the month-bar.


Now we’re ready to apply some Distort and Transform magic! Go to Effect > (Illustrator Effects) Distort & Transform > Transform. Check the “Preview” box and type “6” copies. Now, start dragging the Move/Horizontal slider to the right. You will see the duplicate copies of the box begin sliding over as well.

Transform settings

Move the slider over until the squares are spaced within your printable area to your satisfaction, then click OK. If you need to, you can manually type in a number if the slider doesn’t go far enough for you.

Final position

Now go again to Effect > Distort and Transform > Transform. A warning dialog box will come up — click the “Apply New Effect” button to continue.

The Transform Effect dialog box will come up again. This time, type “4” copies and move the Vertical slider to the left. When you’re happy with the spacing, click OK.

Transform effect settings

The beauty of the transform effect is that the copied squares are truly copies of the original object. Any changes you make to the original object will automatically apply to the other copies.

I created a colored bar for the month and typed the days of the week. At this point, I decided that I wanted to have the month actually typed (instead of handwritten), so I added that as well. (See below.) You can create whatever objects and effects you want in Illustrator for the month and weekday headings.

Now you’re ready to create the bottom half of the page. Because of the tight margin at the bottom of the calendar and the printing margins of my printer, I couldn’t just simply duplicate the entire thing at the bottom — I was going to have to flip the copy that I made to be upside-down. First, I copied the squares by clicking on the original square, holding the Alt (PC) key, and Shift-dragging the square down to the bottom half of the page. Holding the Alt key allows you to make a copy by dragging/dropping, and holding the Shift key constrains the movement so that they line up perfectly with the previous object.

Creating bottom half of page

Now, let’s flip and copy the header. Select all the header objects (you can group them together if you want), then select the Rotate tool. To make positioning the header easier, click once in the center of the page to set the center of rotation. (You can watch the rulers on the top and left as you move your mouse to find the center of the page.)

Copying and rotating header

Your next click/drag will actually rotate the object. Hold down the Alt/Option key as you drag so that a copy is created. Drag around until the copy of the header is positioned properly.

Copying and rotating header

Here’s what the completed layout looks like:

Completed layout

Now at this point, you could manually select the month names, change them, print, and repeat. But, again, I’m lazy, and I like to find better ways of doing things. I’m not that familiar with Illustrator, but I was fairly certain that there was a feature somewhere that would allow me to have variable text. After some quick searching, I found this Adobe Design Center Tutorial that explained how to create data-driven graphics.

First step is to open the Variables palette. Select the top month field, then click the “Make Text Dynamic” icon at the bottom of the Variables palette. In the dialog box, type a name for the variable — I called mine “Month1.” Repeat for the bottom month field (I called mine “Month2”).

Setting up variables

Now, click the “Capture Data Set” button, then go to Save Variable Library in the palette fly-out menu. This will prompt you to save an .xml file.

Note: Before saving the variable library, I found it helpful to select the text and change it (“january” and “february”) and click the Capture Data Set button again, so that I could easily see what I would need to change in the XML file.

Save dataset

Now open the .xml file for editing in your editor of choice. I used a simple text editor.

Here is the code that I modified:

<v:sampleDataSet dataSetName="Data Set 1">
<v:sampleDataSet dataSetName="Data Set 2">

Using the inital data as a guide, copy the XML code and update the “Data Set #,” “Month1,” and “Month2” variables with the rest of the months.

Save the XML file.

Go back to Illustrator. In the Variables palette, select Load Variable Library. Browse to the XML file and select it, and click OK at the prompt that asks if you want to replace the existing data.

You’ll see that all the data sets show up in the Data Set dropdown. As you select the different data sets, the names of the month change!

At this point, you can choose to print out each page as you change the data set, or do something else fancy with it, perhaps by creating a batched action to save to a PDF or something like that.

If you have a lot of time and if you like things to look neat and pretty, you could create text variables and actually print out the day-numbers as well. I’m lazy, so the thought of having to update an XML file with all the days of the month is not appealing… for some reason I’d rather just hand-write the numbers in.


  1. shalanah
    Posted April 3, 2007 at 10:36 pm | Permalink

    i’m making a daily calendar utilizing illustrator (a very large undertaking but hopefully worth it in the end) and i was trying to find an automated way of importing data into illustrator. this was exceptionally helpful and will probably save me a BUNCH of time. easy to follow directions and nice screen captures thanks for sharing!

  2. Posted April 4, 2007 at 6:40 am | Permalink

    Shalanah – I’m glad you found it helpful!

  3. Posted May 23, 2007 at 12:57 am | Permalink

    Whoa… this is a gold mine! Thanks for this tutorial and all the tips!

  4. Posted May 23, 2007 at 6:55 am | Permalink

    Gautch – You’re welcome!

  5. Janine
    Posted August 11, 2007 at 7:54 am | Permalink

    Great directions! But for those of us who don’t have access to Illustrator (or don’t want to shell out the clams for it), is there a cheap/free alternative that works in more or less the same way?

  6. Posted August 11, 2007 at 8:00 am | Permalink

    Hi Janine — I haven’t really looked into Illustrator alternatives so I don’t have an answer for you, although you can always make rounded boxes in Word, PowerPoint, etc. — you just don’t get the same level of control that you do in Illustrator (or the cool Distort and Transform function).

    Thanks for visiting!

  7. Piers
    Posted August 21, 2007 at 9:11 am | Permalink

    Janine, try Inkscape,

  8. erik
    Posted October 10, 2007 at 4:54 pm | Permalink

    you’re stuff is GREAT!! I am looking at getting a new system, and your ideas helped me a ton….


  9. Posted October 11, 2007 at 7:36 am | Permalink

    Thanks, Erik! Good luck with getting a new system that works for you!

  10. mark
    Posted October 30, 2007 at 5:02 pm | Permalink

    Just tried it in CS3 and it worked great! Awesome tutorial, thanks.

  11. KimY
    Posted November 29, 2007 at 9:46 am | Permalink


    Nice tutorial! If you have indesign or Quark xpress you can download a CalendarWizard to Generate day numbers and layouts as well, for any year you like. You can find it on…
    It is made up of tables though, the way this calendar was done is more orignal.

  12. shani
    Posted January 27, 2008 at 11:24 pm | Permalink

    very very goog tutorial

  13. Posted April 2, 2008 at 3:48 pm | Permalink

    This really helped thanks!

  14. ira
    Posted April 6, 2009 at 12:14 pm | Permalink

    Any chance you could post some of your calendar files? Thanks!

  15. velvetraven1
    Posted November 11, 2009 at 6:07 pm | Permalink

    I have been looking and looking for ways to make my own calendar when I came across your blog. You are a lifesaver and I love what you’ve done. This really helps me a lot. Thank you!

  16. Posted December 27, 2013 at 7:31 am | Permalink

    Great illustrator tutorial – love the distort effect now! Also a nice way to dip a toe into .XML editing (got to use Dreamweaver for the first time, thank you!)

One Trackback/Pingback

  1. […] Creating a calendar layout in […]

Post a Comment

Required fields are marked *


Get every new post delivered to your Inbox.

Join 50 other followers

%d bloggers like this: