Nevron Open Vision Documentation

In This Topic

Graphics Overview

In This Topic

The NOV Graphics module provides the essential objects need to perform different geometry, imaging, text and styling operations related to graphics.

The NOV Graphics module features implementation of essential graphics algorithms that aims to ensure that rasterization of DOM content can fall-back to managed implementation in environments where a specific graphics algorithm that is usually implemented in unmanaged code does not exist or does not conform to NOV standards. Certain graphics algorithms are always performed by NOV, to ensure the consistency of the graphics output under all environments.

The NOV Graphics objects can be generally divided into the following categories:

**Styles**

Styles are used to change the filling, stroking and shadow of rendered geometries. Styles can be applied to an instances of the

NPaintVisitorclass (see the Painting topic) to alter the appearance of subsequently rendered geometries and/or text. Styles are generally implemented as DOM attributes, since you typically expose styles as properties of DOM elements (see Documents for more info).The following topics discuss the basic styles: Fill, Stroke, Shadow and Font.

**Geometries**

NOV geometries are implemented with

doubleprecision. The NOV geometry objects fall into the following general categories:

BasicThese are fundamental structures related to graphics, such as

NPoint,NSizeandNMargins(double precision).

TheNPointI,NSizeIandNMarginsIstructures feature similar operations, but are implemented with integers.

TransformationsNOV graphics are using the

NMatrixstructure to represent an affine transformation in 2D space. TheNMatrixstructure represents a 3x2 matrix and implements the general matrix operations withdoubleprecision.

Primitive GeometriesThese are basic primitive geometries that represent closed and open figures and curves such as rectangles, ellipses, ellipse segments, line segments etc.

See Primitive Geometries for more info.

MultiPoint GeometriesThese are graphics paths, polygons and polylines.

See Multipoint Geometries for more info.

RegionsRegions are used to represent closed areas in 2D space.

Regions implement proprietaryConstructure Solid Geometry(CSG) algorithms that allows you to perform Set-Operations (union, intersection, subtraction, exclusive-or) with arbitrary geometries.

See Regions for more info.

**Imaging**

NOV implements core support for essential imaging algorithms, such as decoding and encoding of popular image formats (.PNG, .JPEG, .BMP, .GIF), raster manipulation etc.

See Images for more info.

All examples related to the NOV Graphics assume that you are using the **Nevron.Nov.Graphics** namespace and that you have referenced the **Nevron.Nov.Presentation.XXX.dll** for the specific runtime that you target.