Skip to main content

simple graphics animation video generator

Project description

Graphics Maker (Python)

What

This is a simple python package that provides a way to generate flat design animation videos. It allows for simple shapes and transitions of location, rotation and scale.

Why

I was tired of building animations with other tools and getting choppy/unsatisfactory results. I'm also too cheap and lazy to pay for an expensive tool, and then have to learn all the intricacies. So I just made this for myself.

Dependencies:

In order to use this package you need to have some libraries installed for libcairo2. Google what you need to install for your distro. Also for images we need PIL.

How to use:

Install the package in your python environment:

pip install graphics-maker

The following steps should be taken to create an animation:

NOTE: ALL LOCATION/DIMENSION BASED VALUES SHOULD BE GIVEN AS PERCENTAGES OF THE VIDEO DIMENSIONS.

  1. Instantiate an instance of GraphicsMaker with the desired settings.
Argument Description
name File name
w Video width
h Video height
fps FPS default:60
output_dir The directory to output the result to default:./outputs/
output_type The video type output (mp4/gif) default:mp4
  1. Create and add Objects to the GraphicsMaker with the desired type, location, rotation, scale and colour.
  2. Add AnimationData instances to the GraphicsMaker for objects you'd like to animate within a given timeframe.
  3. Run .generate_animation() on the GraphicsMaker instance.

Supported object types

  1. Circle
  2. Rectangle
  3. Polygon
  4. Text
  5. Image
  6. Custom Draw (provide your own draw function)

TODO:

  • More documentation on capabilities.
  • Radial gradient transition.
  • Fix linear gradient transition of odd angle.

Examples

Example programs using the lib are in examples/. Feel free to run it locally and generate the videos! But here they are as well:

https://github.com/DavidOberholzer/graphics-maker/assets/20847795/72428e27-dd3d-4585-83f6-23776edaae99

https://github.com/DavidOberholzer/graphics-maker/assets/20847795/55603c97-59d8-485c-966c-0ccf743d93c4

https://github.com/DavidOberholzer/graphics-maker/assets/20847795/04dc3927-9b7d-4abd-b37a-3f5f945617f3

Project details


Download files

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

Source Distribution

graphics-maker-0.2.1.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

graphics_maker-0.2.1-py3-none-any.whl (8.8 kB view details)

Uploaded Python 3

File details

Details for the file graphics-maker-0.2.1.tar.gz.

File metadata

  • Download URL: graphics-maker-0.2.1.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for graphics-maker-0.2.1.tar.gz
Algorithm Hash digest
SHA256 010b85c45c206a9f0f280fe40be1fb2fa5fa56f87f12a4a92ae3a2dbe6c585bd
MD5 68825ddb70e98cc8d4ce04f6ba7dd5ca
BLAKE2b-256 418f42a8b4169b7fa5d83069f52a448e66341e158e78dbf15af1dcb3fb743fca

See more details on using hashes here.

File details

Details for the file graphics_maker-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: graphics_maker-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 8.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.8.10

File hashes

Hashes for graphics_maker-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7d55029378913f6db701a9baf113c9fb02cac7f2ccecb9ec4ea4bca5735fa8f0
MD5 7463255eafb3b6b9be4cedeed2ee0e57
BLAKE2b-256 7a9be642ba7a43fbd1fe1bd36b9f52cf8ea87b6d216e60c49607971dde0f7c8b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page