Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (
Help us improve Python packaging - Donate today!

Year calendar creation in Python

Project Description

[![Latest Version](](

Generate your year calendar in Python. The result is a PDF file with 12 pages containing an image and a grid of days.

### Requirements
* pillow or PIL
* reportlab
* DejaVu fonts (if you want pyearcal work out of the box)
* BeautifulSoup (optional)
* Python 2.7?, 3.4+ (version <=0.2 only Python 2.7 support)

### Usage

1. Prepare a directory with 12 images (different image providers are planned)
2. Initialize calendar with all options.
3. Render it to PDF

### Example code

# Import important modules
from pyearcal import YearCalendar
from pyearcal.image_sources import UnsortedImageDirectory
from datetime import date
from pyearcal.l10n import CzechLocale

# Use all pictures from "images" directory
image_source = UnsortedImageDirectory("images")

# Use Czech locale and holidays
locale = CzechLocale()

# Set a few special days
special_days = [
date(2014, 1, 31) # Guido van Rossum's birthday

calendar = YearCalendar(2016, image_source, locale, special_days)

You can take **FlickrDownloader** as an inspiration for developing a more sophisticated image source.

### Example with real pictures

[India Faces Calendar 2014 (80 MB)](

Release History

This version
History Node


History Node


Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, Size & Hash SHA256 Hash Help File Type Python Version Upload Date
(10.1 kB) Copy SHA256 Hash SHA256
Source None Dec 7, 2015

Supported By

Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Google Google Cloud Servers DreamHost DreamHost Log Hosting