ShapePaint
How a shape is painted, as SVG's presentation attributes. A Group's is its shapes'.
Usage
Share stroke styling between shapes.
// Share stroke styling between shapes.
import { Circle, Drawing, Path, type ShapePaint } from 'kuito';
// The app's icon strokes, shared by every shape that draws one.
const iconStroke: ShapePaint = {
fill: 'none',
stroke: '#1c1c1e',
strokeWidth: 2,
strokeLinecap: 'round',
strokeLinejoin: 'round',
};
<Drawing label="Search" viewBox={[0, 0, 24, 24]} width={24} height={24}>
<Circle cx={11} cy={11} r={7} {...iconStroke} />
<Path d="M16 16l5 5" {...iconStroke} />
</Drawing>;Type declaration
export interface ShapePaint {
/** A hex color, or `none`; black by default. */
fill?: string;
fillRule?: FillRule;
/** A hex color, or `none`, the default. */
stroke?: string;
/** In user units; 1 by default. */
strokeWidth?: number;
strokeLinecap?: StrokeLinecap;
strokeLinejoin?: StrokeLinejoin;
strokeMiterlimit?: number;
/** Dash and gap lengths in user units, repeated. */
strokeDasharray?: readonly number[];
strokeDashoffset?: number;
/** Multiplies with its Groups' opacity. */
opacity?: number;
/** In user units, then `rotate` in degrees and `scale`, about the origin. */
translateX?: number;
translateY?: number;
scale?: number;
rotate?: number;
}Members 14
| Name | Type | Required | Description |
|---|---|---|---|
fill | string | No | A hex color, or none; black by default. |
fillRule | FillRule | No | — |
stroke | string | No | A hex color, or none, the default. |
strokeWidth | number | No | In user units; 1 by default. |
strokeLinecap | StrokeLinecap | No | — |
strokeLinejoin | StrokeLinejoin | No | — |
strokeMiterlimit | number | No | — |
strokeDasharray | readonly number[] | No | Dash and gap lengths in user units, repeated. |
strokeDashoffset | number | No | — |
opacity | number | No | Multiplies with its Groups' opacity. |
translateX | number | No | In user units, then rotate in degrees and scale, about the origin. |
translateY | number | No | — |
scale | number | No | — |
rotate | number | No | — |
Generated from the public TypeScript declarations: signatures, props and defaults come from the checked source, descriptions from its JSDoc. No defaults are invented.