Introduction: Day-by-Day Calendar

For many years, I've used and enjoyed the desktop calendars with a different page for each day. Some have been comic strips, some have been quotes, others have been trivia. I started doing some research recently into the history of computing and ended up with a list of dates to make into a calendar. 

You can see more about it at https://sites.google.com/site/todayincomputinghistory/home. In this instructable, I'll show you how I did mine so that you can make yours.

Step 1: Download Scribus

Scribus is an open source desktop publishing program available for many platforms. You can find it at http://www.scribus.net/

The version I used was 1.3.3.13svn. I'm not sure if future versions will work, but give it a try if you already have a newer version installed.


Step 2: Open the Sample Document, Script and Datafile

The Font
For this sample to work, you'll want to install the 'Bank Gothic Light' font included in the attached zip file below. The steps for this are dependent on your operating system and aren't included here.

The Attachment

Now open the 'sample.sla' document. You should see a document similar to the one listed below.

The Data File
If you open the data3.csv file, you'll see the data file used for the calendar. The columns should be self-explanitory.

The Script
The python script, sample.py identifies where the data will be put on the page and how it will be formatted. I'll discuss a bit on the next step how to modify it.

Getting Started
Select the "Script" menu in Scribus, then "Execute Script..." and navigate to where you expanded the attached zip file and open 'Sample.py'. You'll then be asked for the data file location. Navigate to the same folder and open the 'data3.csv' file.

Once you do this, you'll see a progress bar along the bottom as the script does it's work. When it's done, your first page will still be blank, the second page will have the CSV header data showing (you can delete that page later) and then you'll see the calendar pages. 

BE SURE TO SAVE THIS FILE WITH A DIFFERENT NAME AFTER THE SCRIPT RUNS ! 
If you re-run the script, it will append to the end of the document, which is not what you want.

Step 3: Tweak the Output

The python script contains the instructions for pulling the data from the data file and placing it on the page.

Don't be intimidated by python if you haven't used it before. The code that is there should be straightforward to modify (though it can be tedious). 

The basic structure for the python script is as follows:
 - Lines 1 - 59 set up the script and read the values from the data file you select
 - Lines 60 - 153 set the definition for each of the text boxes that appear on the page. There are four each of date, day, title and description text boxes. There are four sets of text boxes that correspond with the four copies that appear on each page.
 - Lines 154 - 167 set up the loop that will copy the data read from the data file,\
 - LInes 168 -272 Creates each textbox, adds data to it and set the font, size and other attributes.
 - Lines 273 - 308 sets some application -specific settings.

Experiment with changing x, y values in lines 60-153 to see how the changes are reflected in the output.

Experiment with changing the contents of the text boxes and the other attributes of the text to see how they are reflected in the final product.

You can manually add text boxes to the master page and translate the x,y, height and width values to the script and re-run it. This can be tedious, but you have lots of control over the layout.

For consistency, make sure that each of the four copies of your text boxes have the same height and width. Also, align the horizontal  copies of your text boxes by using the same 'y' values and align the vertical copies of your text boxes by using the same 'x' values. Referring to the sample script should help clarify this.

I haven't included the full year's worth of data, but if you come up with a great alternative design, go to https://sites.google.com/site/todayincomputinghistory and let me know so that we can discuss sending the whole data file for your design.

Step 4: Save As PDF

when you think you've got the design and data in place, export to PDF!

Be sure to save a copy of the python script and data file as well as the modified document so that you can go back and edit if you want.

Step 5: Print!

I took my PDF to a local printer and was able to get four calendars printed for less than $25. You may need to go to a couple places to check prices. Tell them you want to print one copy of the file, cut into four sections and bind it like a notepad with a cardboard back. 

So, for less than $6 each, you can have your own day-by-day calendar.

Be sure to visit my website for other variations on my calendar.

https://sites.google.com/site/todayincomputinghistory/calendar