You are here

Calendar maker

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0
Rate this item!
sg-calendar.scm29.81 KB

UPDATE (January 2011): I have updated the attached script and added a command for generating a calendar for the entire year using various languages (note that only the language of the rendered calendar is changed, the script's interface itself will still be in English). A more thorough description of the script can be found by visiting

The script I've written adds two layers to an image which overlay the active layer with dates and a grid of lines producing a calendar for the specified month. It is not so much intended to create a complete calendar, but to be used as a tool in creating calendars. The command appears in the menus as "Filters->Render->Calendar..."

The options presented in the dialog are:
* Month - the month to be used
* Year - the year to be used
* Sunday first - if checked then Sunday is the first day of the week, otherwise Monday
* Font - the font to be used
* Fontsize - The size of the numbers used for the dates. 100% will use the largest possible
* Right justify - If checked then the date will be right-justified in a field two characters wide
* Border width - determines how thick the lines of the grid will be (can be "0" for no grid)
* Border color - color used for grid (note: FG color is used for the text)
* Date position - the alignment of the date number within its box

The month and year are not generated on the image; they should be added to the image manually if desired. For reference, the month and year appear in the layer names of the newly created layers.

EDIT: When called from within Script-fu, the script will return a list containing the "dates" layerID and the "grid" layerID.

EDIT2: I have updated the script and added a "Layout" option which offers the following treatments of the dates:

* Allow 6 weeks (resizing text for optimal fit)
* Force 6 weeks (use six rows of weeks in all cases, even for a 4-week February)
* Wrap week 6 to week 1 (the approach proposed by wbool)
* Wrap week 6 to week 5 (and if needed compressing two days into a single cell)

Code License: 
GIMP Version: 
Scripting Engine: 


How do i do this? I pasted it into script but its not working?

Works great. For noobs: to use, copy the .scm file to your scripts directory, e.g. for Windows7 its C:\Users\\.gimp-2.6\scripts.

saulgoode, one request: is it possible to make a calendar where all the days of the whole month are on one row, and each month is on it's own row? The dimensions would be Row (12) x Column (31). There's a great example at ? I looked through the code, and my rusty coding skills made making the change myself prohibitive.

I understand this is beyond the scope of what should be reasonably expected from the script (uncommonly used option perhaps) but it would be a a cool feature I think.

some pretty cool desktop wallpaper with a script that had this function.
Great idea!


I would probably make it a separate script, though cannibalizing much of code from this one. Give me a week or two (I do most my scripting on weekends).

I don't find this plugin in Filters->Render-> ...??? :-S .. :( thought i downloaded it. and copy/paste in Plugin folder... vision Gimp i'm using Gimp 2.6.8 ,who can help me as talk me why? thank all ...

It needs to go in your 'scripts' folder (not 'plug-ins').

nice script... can we add font color ?

The FG color is used by the script for the font. If you wish to change the font color after you have run the script, you can perform an "Alpha to selection" on the dates layer (or lock its alpha) and bucket fill with a color.

you may also use any "Alpha to logo script" on the text and/or on the grid layer (you just have to delete after the button layer created by the script... that with a solid color )

Only risk several alpha to logo scripts seems very buggy (some delete all previous layers, other may crop borders ) but in case of problem UNDO will solve

Subscribe to Comments for "Calendar maker"