Computer Graphics in Python ebook
Martin McBride, 2019-11-09
Tags vector graphics bezier curve colour text font font style text metrics alignment path subpath gradient radial gradient transform rotation scaling clipping masking compositing
Categories book pycairo
Download a free preview.
The Pycairo library is a Python graphics library. This book covers the library in detail, with lots of practical code examples.
PyCairo is an efficient, fully featured, high quality graphics library, with similar drawing capabilities to other vector libraries and languages such as SVG, PDF, HTML canvas and Java graphics.
Typical use cases include: standalone Python scripts to create an image, chart, or diagram; server side image creation for the web (for example a graph of share prices that updates hourly); desktop applications, particularly those that involve interactive images or diagrams.
The power of Pycairo, with the expressiveness of Python, is also a great combination for making procedural images such as mathematical illustrations and generative art. It is also quite simple to generate image sequences that can be converted to video or animated gifs.
This book is primarily aimed at developers who have at least a small amount of Python experience, who are looking to use Python to create computer graphics for any application. The examples in the book use basic Python constructs, you don't need to be a Python guru to learn Pycairo. No prior knowledge of computer graphics is assumed, although if you have used other graphics systems you should still find this book useful as Pycairo has its own unique quirks and features.
- Introduction to vector graphics
- About Pycairo
- Basic drawing operations
- Paths and complex shapes
- Transforms and state
- Working with text
- Gradients, images and patterns
- Clipping, masking and compositing
- Output formats
- Integration with other libraries
- The book page on the leanpub website.
- Signing up for the Python Informer newsletter at pythoninformer.com
- Following @pythoninformer on twitter.
- Contacting me directly by email (email@example.com).