OpenScreen is a technology developed by CiSRA and used in several
Canon products. Just as OpenPage was
designed to make it easy to efficiently create and print color graphics
at full printer resolution, OpenScreen was designed to make it easy for
developers to efficiently create and dynamically manipulate graphics
for screen display.
OpenScreen is a library designed to achieve interactive frame rates.
OpenScreen has C/C++, Java and "ici" language bindings, and includes substantial documentation. It is thread safe, runs on Windows and Linux, and is available as either a DLL or
static library.
OpenScreen has sophisticated graphics and compositing features, and is
designed to take advantage of existing memory to increase performance.
It provides a simple but flexible API to allow developers to easily
construct high quality "naturalistic" interactive applications.
For example, OpenScreen provides functionality for picking primitives
based on the position of the mouse, high-speed updates to the display
in response to events, and the ability to easily create fades and other
animation effects.
OpenScreen has images, text, and spline objects as graphics primitives,
with 13 compositing operations (over, in, out, atop, etc.) which fully
support transparency. These objects and operations are used to construct
a compositing tree which can then be simply modified for redisplay.
For example, a part of the tree could be animated by adjusting a
transformation matrix.
OpenScreen is utilised in PhotoRecord, PosterArtist and VideoPresenter and other Canon and CiSRA products. |