Meziantou.Framework.Imaging.Drawing namespace

Classes

NameDescription
BlendPrimitiveA primitive that draws its first input over its second one with a blend mode: feBlend of SVG.
BlurFilterA Gaussian blur, of one standard deviation or of one per axis: blur() of CSS, feGaussianBlur of SVG.
BrushThe colors a shape is painted with: a SolidBrush, a GradientBrush, a PathGradientBrush, an ImageBrush or a PatternBrush.
ColorMatrixFilterA color matrix, as a filter: the filter functions of CSS that change colors, feColorMatrix of SVG.
ColorMatrixPrimitiveA primitive that applies a color matrix to its input: feColorMatrix of SVG.
ComponentTransferPrimitiveA primitive that gives each component of each pixel of its input a new value by a function: feComponentTransfer of SVG.
CompositePrimitiveA primitive that combines two inputs with an operator of Porter and Duff, their sum, or an arithmetic of their components: feComposite of SVG.
ConvolveMatrixPrimitiveA primitive that computes each pixel from the pixels around it with a matrix of weights: feConvolveMatrix of SVG.
DiffuseLightingPrimitiveA primitive that lights the surface whose height is the alpha of its input, as a matte surface: feDiffuseLighting of SVG.
DisplacementMapPrimitiveA primitive that moves the pixels of its input by the colors of a map: feDisplacementMap of SVG.
DistantLightA light infinitely far away, whose rays are parallel: feDistantLight of SVG.
DropShadowFilterA drop shadow: drop-shadow() of CSS, feDropShadow of SVG, the shadow of the HTML canvas.
DropShadowPrimitiveA primitive that draws its input over its shadow: feDropShadow of SVG.
FilterAn effect applied to a drawing as a whole, or to what is behind it: a blur, a color matrix, a drop shadow, or a chain of them, as the filter and backdrop-filter properties of CSS.
FilterChainFilters applied one after the other, each to the result of the one before it: a list of filter functions of CSS.
FilterGraphA filter made of primitives that read the drawing, its alpha, and each other's results: an SVG filter element.
FilterLightSourceThe light of a DiffuseLightingPrimitive or of a SpecularLightingPrimitive: DistantLight, PointLight or SpotLight.
FilterPrimitiveA primitive of a FilterGraph: an element fe* of an SVG filter.
FloodPrimitiveA primitive that fills its subregion with a color: feFlood of SVG.
GaussianBlurPrimitiveA primitive that blurs its input: feGaussianBlur of SVG.
GradientBrushA brush painting a transition between colors: a LinearGradientBrush, a RadialGradientBrush or a SweepGradientBrush.
GroupOptionsThe attributes of a group (DrawingCanvas.Group): a set of drawings composited as a whole, which can mix with what is under it (a non-isolated group) and whose drawings can knock out one another (a knockout group), as the transparency groups of PDF (ISO 32000-2, 11.4) and the groups of the W3C Compositing and Blending specification.
ImageBrushA brush painting the pixels of an image.
ImagePrimitiveA primitive whose result is what a callback draws: feImage of SVG, of an image or of an element.
LineMarkerA shape drawn at an end of the open contours a pen strokes: the head of an arrow, a dot, a square.
LinearGradientBrushA gradient along a line: the color is constant on the perpendiculars of that line.
MergePrimitiveA primitive that draws its inputs over each other, the first at the bottom: feMerge of SVG.
MorphologyPrimitiveA primitive that makes the shapes of its input thinner or thicker: feMorphology of SVG.
OffsetPrimitiveA primitive that moves its input: feOffset of SVG.
PathGradientBrushA brush painting the colors of the vertices of a polygon and of a center point, mixed across the triangles between them: the colors of a shape described by its vertices (Gouraud shading).
PatternBrushA brush painting a drawing that repeats: a tile drawn by a callback, laid side by side in both directions.
PenImmutable description of a stroke: its paint, its width and the shape of its corners and ends.
PointLightA light at a point, that shines in every direction: fePointLight of SVG.
RadialGradientBrushA gradient around a point: the color is constant on circles around that point.
SolidBrushA brush painting a single color.
SpecularLightingPrimitiveA primitive that lights the surface whose height is the alpha of its input, as a shiny surface: feSpecularLighting of SVG.
SpotLightA light at a point, that shines toward another point: feSpotLight of SVG.
SweepGradientBrushA gradient around a point: the color is constant on the half-lines that start at that point.
TextPathOptionsHow a text is placed along a path.
TilePrimitiveA primitive that repeats the subregion of its input in every direction: feTile of SVG.
TransferFunctionA function that gives a new value to a component of each pixel: a feFuncR, feFuncG, feFuncB or feFuncA element of SVG.
TurbulencePrimitiveA primitive that fills its subregion with Perlin noise: feTurbulence of SVG.
VectorPathAn immutable sequence of contours made of straight segments, Bézier curves and arcs of ellipses, built with a VectorPathBuilder and drawn with DrawingCanvas.Fill or DrawingCanvas.Stroke.
VectorPathBuilderBuilds a VectorPath.
VectorPathMeasureThe chords of a path, computed once, to answer many questions about its length, its points and its directions: the position of a marker that moves along the path, or the point a pointer snaps to as it moves.

Structs

NameDescription
CornerRadiiThe radius of each corner of a rounded rectangle. A corner whose radius is zero is not rounded.
DrawingCanvasThe drawing surface handed to the callback of ImageFrame.Draw or Image.Draw. It is only valid until the callback returns.
FilterInputAn input of a primitive of a FilterGraph: the drawing, its alpha, or the result of an earlier primitive.
GradientStopA color at a position of a gradient.
PathSegmentAn element of a VectorPath, as VectorPath.EnumerateSegments gives it: the start of a contour, a straight segment, a Bézier curve, an arc of an ellipse, or the end of a closed contour.
PathSegmentEnumeratorEnumerates the segments of a VectorPath, without allocating. See VectorPath.EnumerateSegments.

Enums

NameDescription
BlendModeHow the color of a paint is mixed with the color of the pixels it is drawn on, before it is composited: the blend modes of image editors and of CSS.
CompositeModeHow a paint is combined with the pixels it is drawn on: the compositing operators of Porter and Duff.
CompositingSpaceThe numeric space in which the paints of a drawing are combined with the pixels.
FillRuleThe rule deciding which points are inside a path whose contours overlap or intersect themselves.
FilterChannelA component of a pixel that a DisplacementMapPrimitive reads: xChannelSelector and yChannelSelector of SVG.
FilterColorSpaceThe colors a primitive of a FilterGraph computes with: color-interpolation-filters of SVG.
FilterCompositeOperatorHow a CompositePrimitive combines its two inputs: the operator of feComposite of SVG.
FilterEdgeModeWhat a filter reads beyond the edges of what it filters: the pixels a blur or an offset reaches there.
FilterInputKindWhat a FilterInput is.
FilterMorphologyOperatorWhat a MorphologyPrimitive keeps of the pixels around each pixel: the operator of feMorphology of SVG.
FilterTurbulenceTypeThe noise a TurbulencePrimitive makes: the type of feTurbulence of SVG.
GradientColorSpaceThe numeric space in which a gradient mixes the colors of its stops.
GradientSpreadModeThe colors of a gradient outside the range of its stops.
HatchStyleThe tiles of 8 by 8 pixels a hatch PatternBrush repeats: lines, or a fraction of the pixels.
ImageSamplingHow the color of an image is read at a position that is not the center of one of its pixels.
ImageWrapModeWhat an ImageBrush paints outside the pixels of its image.
LayerOpacityHow the opacity of a layer combines with its operator.
LineCapThe shape of the ends of an open stroke.
LineJoinThe shape of the corner between two segments of a stroke.
MaskModeWhat a mask keeps of the drawing it masks.
PathCombineModeIdentifies what VectorPath.Combine keeps of the areas two paths fill.
PathSegmentKindIdentifies what a PathSegment adds to a path.
PatternTilePrecisionThe samples of the image a PatternBrush draws its tile on.
PenAlignmentWhere a stroke is, relative to the path it follows.
TextPathAlignmentWhere a text is placed along the path it follows.
TextPathOverflowWhat happens to the text that is beyond the ends of the path it follows.
TextPathSideThe side of a path a text is drawn on.
TransferFunctionKindThe kind of a TransferFunction: the type of a feFunc* element of SVG.

Delegates

NameDescription
DrawingActionA callback receiving scoped access to the drawing surface of a frame or of an image.
DrawingAction<TState>A callback receiving scoped access to the drawing surface of a frame or of an image, and caller state.