API

Work in progress

N.B. All of the following are available unprefixed after a from coldtype import *, or are available at the specified prefix locations after an import coldtype.

Textsetting Classes

coldtype.text.reader.Style(font, …[, …])

Class for configuring font properties

coldtype.text.reader.StyledString(text, style)

Lowest-level vectorized typesetting class

coldtype.text.composer.Composer(rect, text, …)

For multiline text lockups

The most important thing to understand is that textsetting classes can be turned into vector classes via the .pen or .pens methods available on both StyledString and Composer — .pen gets you a single vector representation of a piece of text (aka a DATPen), while .pens gets you a structured list of DATPen’s, aka a DATPens.

Geometry Classes

coldtype.geometry.Point(point)

Representation of a point (x,y), indexable

coldtype.geometry.Rect(*rect)

Representation of a rectangle as (x, y, w, h), indexable

Vector/Path Classes

coldtype.pens.datpen.DATPen(**kwargs)

Main vector representation in Coldtype

coldtype.pens.datpen.DATPens([pens])

A set/collection of DATPen’s

Rendering Decorators

coldtype.renderable.renderable([rect, bg, …])

Base class for any content renderable by Coldtype

coldtype.renderable.animation.animation([…])

Base class for any frame-wise animation animatable by Coldtype

Time/Timing Classes

coldtype.time.Frame(i, animation)

Container for information about a frame

coldtype.time.Timeable(start, end[, index, …])

Abstract base class for anything with a concept of start and end/duration

coldtype.time.Timeline(duration[, fps, …])

General base class for any kind of timeline or sequence, in the NLE sense

coldtype.time.Timing(t, loop_t, loop, easefn)

coldtype.time.loop.Loop(duration, …[, …])

Construct for quickly developing animations based on loop

coldtype.time.easing.ease(style, x)

Though available as a general-purpose function, this logic is usually accessed through something like the .progress function on an animation or timeable.