{"id":18689720,"url":"https://github.com/mrseanryan/calendizer","last_synced_at":"2025-11-08T07:30:30.849Z","repository":{"id":96809578,"uuid":"436998832","full_name":"mrseanryan/calendizer","owner":"mrseanryan","description":":calendar: Generates images of calendar month tables and can paste them onto suitable photos.","archived":false,"fork":false,"pushed_at":"2023-11-18T16:33:02.000Z","size":529,"stargazers_count":2,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2024-12-28T01:49:41.997Z","etag":null,"topics":["calendar","command-line","command-line-tool","image","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mrseanryan.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-10T14:01:57.000Z","updated_at":"2022-12-14T23:59:07.000Z","dependencies_parsed_at":"2023-11-18T18:03:33.354Z","dependency_job_id":null,"html_url":"https://github.com/mrseanryan/calendizer","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrseanryan%2Fcalendizer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrseanryan%2Fcalendizer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrseanryan%2Fcalendizer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mrseanryan%2Fcalendizer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mrseanryan","download_url":"https://codeload.github.com/mrseanryan/calendizer/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239550286,"owners_count":19657541,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["calendar","command-line","command-line-tool","image","python"],"created_at":"2024-11-07T10:44:55.766Z","updated_at":"2025-11-08T07:30:30.784Z","avatar_url":"https://github.com/mrseanryan.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# :calendar: calendizer README\r\n\r\nCalendizer is a simple Python command line tool that generates a set of calendar-month tables and pastes them onto a given set of 12 photos.\r\n\r\nA quick way to make your own calendar for printing.\r\n\r\n![Robin in April](exampleImages/2022-04-April--P1180988-robin.small.jpg \"A robin in April\")\r\n\r\n## Why calendizer and self-printing\r\n\r\nSelf-printing has several advantages over online/order printing:\r\n\r\n- you can iterate several test-prints to get things just right\r\n- often images print slightly darker than on-screen, and self-printing allows you to adjust for that\r\n- no waiting about for the post!\r\n- depending on your printer and the volume, it can be cheaper\r\n\r\nThe size and position of the calendar-table is fully configurable for each month.\r\n\r\nThis allows for self-printing calendars in a timely manner.\r\n\r\n## Usage\r\n\r\nTo generate 12 images of a mini calendar:\r\n\r\n`python render_calendar_tables.py \u003cyear\u003e \u003cpath to output directory\u003e`\r\n\r\nTo take 12 images and use them to create a calendar:\r\n\r\n`python calendize.py \u003cyear\u003e \u003cpath to directory with 12 images in PNG or JPEG format\u003e \u003cpath to output directory\u003e`\r\n\r\nFor a full list of options, just type the relevant command:\r\n\r\n`python render_calendar_tables.py`\r\n\r\n`python calendize.py`\r\n\r\n### Tips\r\n\r\nBy default, **calendizer** tries to auto-calculate the DPI and margins.\r\nIt uses the table in [CSV format](image_sizes.csv.config) to perform the calculation.\r\n\r\nVia the `--dpi` option, you can override this calculation.\r\n\r\nWith an input image of size 4000 x 3000, these settings seem to work well:\r\n\r\n`--dpi 450 -b 100 -r 100`\r\n\r\nSettings for other image sizes:\r\n\r\n| Image size               | Settings                  |\r\n| ------------------------ | ------------------------- |\r\n| 6000 x 4000 'full frame' | `--dpi 600 -b 150 -r 150` |\r\n| 4000 x 2700              | `--dpi 400 -b 80 -r 80`   |\r\n| 3000 x 2000              | `--dpi 325 -b 60 -r 60`   |\r\n| 2500 x 1800              | `--dpi 250 -b 40 -r 40`   |\r\n| 2300 x 1500              | `--dpi 250 -b 40 -r 40 `  |\r\n\r\nThere is an alpha (transparency) option:\r\n\r\n`-a 0.8`\r\n\r\nbut printing on a small size like 2L or A5 looks better with the default opaque setting.\r\n\r\nExample:\r\n\r\n`calendize.py \u003cyear\u003e \u003cpath to directory with 12 images in PNG or JPEG format\u003e \u003cpath to output directory\u003e --dpi 450 -b 100 -r 100`\r\n\r\n## Dependencies\r\n\r\n- Python 3.x\r\n\r\n## Setup\r\n\r\n1. Install Python 3.7.x and pip\r\n\r\n- Python 3.7.9 or later\r\n- pip 20.2.2 or later\r\n\r\n2. Install dependencies\r\n\r\n```\r\npip install -r pip.config\r\n```\r\n\r\n## References\r\n\r\nhttps://towardsdatascience.com/simple-little-tables-with-matplotlib-9780ef5d0bc4\r\n\r\n# license\r\n\r\nLicense is [MIT](./LICENSE)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrseanryan%2Fcalendizer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmrseanryan%2Fcalendizer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmrseanryan%2Fcalendizer/lists"}