My favorites | Sign in
Project Home Downloads
Project Information
Members
Featured
Downloads
Links

Introduction

This program generates a book agenda file in PDF format, ready to be printed or to be loaded on a ebook reader.

You can choose among different sections. Each section have pdf links to other parts of the agenda.

I've created it for using with my iLiad eBook reader. Btw, I recommend using with ipdf gmt's for editing version.

Released under GNU Public License v3 or later.

Two screenshots of sample pages:

- week page, landscape (option W)

- day page, vertical (option d)

You can download differente agenda files in the download section.

Usage

Usage: python agenda2pdf.py <options>

Options:
    -h, --help 	          Show this text
    -v, --version 	  Show version and exit
    -y, --year 	          Year. If not specified current year is used
    -w, --first-week-day  First day of week: 0 = monday, 6 = sunday (default: 0, monday)
    -f, --format 	  Sections to build. Consult documentation for the definition of each type (default: ciypmwPb)
    -o, --output 	  PDF Output file (default: "agenda-yyyy.pdf")
    -s, --page-size       Specify page size. Valid options: A4, A5, A6, LEGAL, LETTER, ILIAD, ILIAD_FULLSCREEN, ORGANIZER (default: A4)
    -c, --no-compression  Disable PDF file compression (default: enabled)
    -q, --quiet 	  Don't output messages on screen

Sections

Besides the year, you also can specify which sections will be into the final agenda file.

Here there are the description for each section type and the links to other parts of the file:

* c: Cover
  - no links

* i: Index, 1 year, with index
  - month -> 2_months or 1_month
  - table of contents links -> sections
  - page_number -> index

* y: 3 years view
  - year header -> index
  - page_number -> index

* p: Planner, 4 pages with 3-months view planning
  - year header -> index
  - month header -> 2_months or 1_month
  - page_number -> index

* P: Planner next year, 4 pages with 3-months view planning
  - year header -> index
  - page_number -> index

* m: 2 months, vertical
  - month header -> index
  - week number -> agenda_half_week or agenda_week (only if w or W in format)
  - day -> agenda_day or agenda_day+blank (only if d or D in format)
  - page_number -> index

* M: 1 month, landscape
  - month header -> index
  - week number -> agenda_half_week or agenda_week (only if w or W in format)
  - day -> agenda_day or agenda_day+blank (only if d or D in format)
  - page_number -> index

* w: Agenda half week per page, vertical
  - month header or week_number header -> index
  - month -> 2_months or 1_month (only if m or M in format)
  - page_number -> index

* W: Agenda whole week per page, landscape
  - month header or week_number header -> index
  - month -> 2_months or 1_month (only if m or M in format)
  - page_number -> index

* d: Agenda 1 day, vertical
  - date header or week_number header -> index
  - month -> 2_months or 1_month (only if m or M in format)
  - page_number -> index

* D: Agenda 1 day + blank page, vertical
  - date header or week_number header -> index
  - month -> 2_months or 1_month (only if m or M in format)
  - page_number -> index

* B: Blank page, useful for padding
  - page_number -> index

* b: Back
  - no links

You can use a combination of any of these sections using -f or --format argument. The default format used is equivalent to -f ciypmwPb.

If you don't specify a year, current year is used.

Requirements

  • Python v2.5 or greater - v2.6 used
  • ReportLab - v2.1 used
  • Python Image Library - v1.1.6 used
Powered by Google Project Hosting