new PathGroup()
Path group class
- Source:
- Tutorials:
- See:
-
- fabric.PathGroup#initialize for constructor definition
Extends
Members
(static) async :Boolean
Indicates that instances of this type are async
Type:
- Boolean
- Default Value:
- true
- Source:
aCoords
Describe object's corner position in canvas object absolute coordinates
properties are tl,tr,bl,br and describe the four main corner.
each property is an object with x, y, instance of Fabric.Point.
The coordinates depends from this properties: width, height, scaleX, scaleY
skewX, skewY, angle, strokeWidth, top, left.
Those coordinates are usefull to understand where an object is. They get updated
with oCoords but they do not need to be updated when zoom or panning change.
The coordinates get updated with @method setCoords.
You can calculate them without updating with @method calcCoords(true);
- Inherited From:
- Source:
angle :Number
Angle of rotation of an object (in degrees)
Type:
- Number
- Inherited From:
- Source:
backgroundColor :String
Background color of an object.
Type:
- String
- Inherited From:
- Source:
borderColor :String
Color of controlling borders of an object (when it's active)
Type:
- String
- Inherited From:
- Default Value:
- rgba(102,153,255,0.75)
- Source:
borderDashArray :Array
Array specifying dash pattern of an object's borders (hasBorder must be true)
Type:
- Since:
- 1.6.2
- Inherited From:
- Source:
borderOpacityWhenMoving :Number
Opacity of object's controlling borders when object is active and moving
Type:
- Number
- Inherited From:
- Default Value:
- 0.4
- Source:
borderScaleFactor :Number
Scale factor of object's controlling borders
Type:
- Number
- Inherited From:
- Default Value:
- 1
- Source:
cacheProperties :Boolean
Pathgroups are container, do not render anything on theyr own, ence no cache properties
Type:
- Boolean
- Overrides:
- Default Value:
[]
- Source:
centeredRotation :Boolean
When true, this object will use center point as the origin of transformation
when being rotated via the controls.
Backwards incompatibility note: This property replaces "centerTransform" (Boolean).
Type:
- Boolean
- Since:
- 1.3.4
- Inherited From:
- Default Value:
- true
- Source:
centeredScaling :Boolean
When true, this object will use center point as the origin of transformation
when being scaled via the controls.
Backwards incompatibility note: This property replaces "centerTransform" (Boolean).
Type:
- Boolean
- Since:
- 1.3.4
- Inherited From:
- Source:
clipTo :function
Function that determines clipping of an object (context is passed as a first argument)
Note that context origin is at the object's center point (not left/top corner)
Type:
- function
- Inherited From:
- Source:
cornerColor :String
Color of controlling corners of an object (when it's active)
Type:
- String
- Inherited From:
- Default Value:
- rgba(102,153,255,0.5)
- Source:
cornerDashArray :Array
Array specifying dash pattern of an object's control (hasBorder must be true)
Type:
- Since:
- 1.6.2
- Inherited From:
- Source:
cornerSize :Number
Size of object's controlling corners (in pixels)
Type:
- Number
- Inherited From:
- Default Value:
- 13
- Source:
cornerStrokeColor :String
Color of controlling corners of an object (when it's active and transparentCorners false)
Type:
- String
- Since:
- 1.6.2
- Inherited From:
- Source:
cornerStyle :String
Specify style of control, 'rect' or 'circle'
Type:
- String
- Since:
- 1.6.2
- Inherited From:
- Source:
dirty :Boolean
When set to `true`, object's cache will be rerendered next render call.
since 1.7.0
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
evented :Boolean
When set to `false`, an object can not be a target of events. All events propagate through it. Introduced in v1.3.4
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
excludeFromExport :Boolean
When `true`, object is not exported in SVG or OBJECT/JSON
since 1.6.3
Type:
- Boolean
- Inherited From:
- Source:
fill :String
Fill value
Type:
- String
- Overrides:
- Source:
fillRule :String
Fill rule used to fill an object
accepted values are nonzero, evenodd
Backwards incompatibility note: This property was used for setting globalCompositeOperation until v1.4.12 (use `fabric.Object#globalCompositeOperation` instead)
Type:
- String
- Inherited From:
- Default Value:
- nonzero
- Source:
flipX :Boolean
When true, an object is rendered as flipped horizontally
Type:
- Boolean
- Inherited From:
- Source:
flipY :Boolean
When true, an object is rendered as flipped vertically
Type:
- Boolean
- Inherited From:
- Source:
globalCompositeOperation :String
Composite rule used for canvas globalCompositeOperation
Type:
- String
- Inherited From:
- Default Value:
- source-over
- Source:
hasBorders :Boolean
When set to `false`, object's controlling borders are not rendered
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
hasControls :Boolean
When set to `false`, object's controls are not displayed and can not be used to manipulate object
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
hasRotatingPoint :Boolean
When set to `false`, object's controlling rotating point will not be visible or selectable
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
height :Number
Object height
Type:
- Number
- Inherited From:
- Source:
hoverCursor :String
Default cursor value used when hovering over this object on canvas
Type:
- String
- Inherited From:
- Source:
includeDefaultValues :Boolean
When `false`, default object's values are not included in its serialization
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
left :Number
Left position of an object. Note that by default it's relative to object left. You can change this by setting originX={left/center/right}
Type:
- Number
- Inherited From:
- Source:
lockMovementX :Boolean
When `true`, object horizontal movement is locked
Type:
- Boolean
- Inherited From:
- Source:
lockMovementY :Boolean
When `true`, object vertical movement is locked
Type:
- Boolean
- Inherited From:
- Source:
lockRotation :Boolean
When `true`, object rotation is locked
Type:
- Boolean
- Inherited From:
- Source:
lockScalingFlip :Boolean
When `true`, object cannot be flipped by scaling into negative values
Type:
- Boolean
- Inherited From:
- Source:
lockScalingX :Boolean
When `true`, object horizontal scaling is locked
Type:
- Boolean
- Inherited From:
- Source:
lockScalingY :Boolean
When `true`, object vertical scaling is locked
Type:
- Boolean
- Inherited From:
- Source:
lockSkewingX :Boolean
When `true`, object horizontal skewing is locked
Type:
- Boolean
- Inherited From:
- Source:
lockSkewingY :Boolean
When `true`, object vertical skewing is locked
Type:
- Boolean
- Inherited From:
- Source:
lockUniScaling :Boolean
When `true`, object non-uniform scaling is locked
Type:
- Boolean
- Inherited From:
- Source:
minScaleLimit :Number
Minimum allowed scale value of an object
Type:
- Number
- Inherited From:
- Default Value:
- 0.01
- Source:
minX :Number
Minimum X from points values, necessary to offset points
Type:
- Number
- Inherited From:
- Source:
minY :Number
Minimum Y from points values, necessary to offset points
Type:
- Number
- Inherited From:
- Source:
moveCursor :String
Default cursor value used when moving this object on canvas
Type:
- String
- Inherited From:
- Source:
noScaleCache :Boolean
When `true`, cache does not get updated during scaling. The picture will get blocky if scaled
too much and will be redrawn with correct details at the end of scaling.
this setting is performance and application dependant.
default to true
since 1.7.0
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
objectCaching :Boolean
When `true`, object is cached on an additional canvas.
default to true
since 1.7.0
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
oCoords
Describe object's corner position in canvas element coordinates.
properties are tl,mt,tr,ml,mr,bl,mb,br,mtr for the main controls.
each property is an object with x, y and corner.
The `corner` property contains in a similar manner the 4 points of the
interactive area of the corner.
The coordinates depends from this properties: width, height, scaleX, scaleY
skewX, skewY, angle, strokeWidth, viewportTransform, top, left, padding.
The coordinates get updated with @method setCoords.
You can calculate them without updating with @method calcCoords;
- Inherited From:
- Source:
opacity :Number
Opacity of an object
Type:
- Number
- Inherited From:
- Default Value:
- 1
- Source:
originX :String
Horizontal origin of transformation of an object (one of "left", "right", "center")
See http://jsfiddle.net/1ow02gea/40/ on how originX/originY affect objects in groups
Type:
- String
- Inherited From:
- Default Value:
- left
- Source:
originY :String
Vertical origin of transformation of an object (one of "top", "bottom", "center")
See http://jsfiddle.net/1ow02gea/40/ on how originX/originY affect objects in groups
Type:
- String
- Inherited From:
- Default Value:
- top
- Source:
padding :Number
Padding between object and its controlling borders (in pixels)
Type:
- Number
- Inherited From:
- Source:
perPixelTargetFind :Boolean
When set to `true`, objects are "found" on canvas on per-pixel basis rather than according to bounding box
Type:
- Boolean
- Inherited From:
- Source:
rotatingPointOffset :Number
Offset for object's controlling rotating point (when enabled via `hasRotatingPoint`)
Type:
- Number
- Inherited From:
- Default Value:
- 40
- Source:
scaleX :Number
Object scale factor (horizontal)
Type:
- Number
- Inherited From:
- Default Value:
- 1
- Source:
scaleY :Number
Object scale factor (vertical)
Type:
- Number
- Inherited From:
- Default Value:
- 1
- Source:
selectable :Boolean
When set to `false`, an object can not be selected for modification (using either point-click-based or group-based selection).
But events still fire on it.
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
selectionBackgroundColor :String
Selection Background color of an object. colored layer behind the object when it is active.
does not mix good with globalCompositeOperation methods.
Type:
- String
- Inherited From:
- Source:
skewX :Number
Angle of skew on x axes of an object (in degrees)
Type:
- Number
- Inherited From:
- Source:
skewY :Number
Angle of skew on y axes of an object (in degrees)
Type:
- Number
- Inherited From:
- Source:
statefullCache :Boolean
When `true`, object properties are checked for cache invalidation. In some particular
situation you may want this to be disabled ( spray brush, very big pathgroups, groups)
or if your application does not allow you to modify properties for groups child you want
to disable it for groups.
default to false
since 1.7.0
Type:
- Boolean
- Inherited From:
- Default Value:
- false
- Source:
stateProperties :Array
List of properties to consider when checking if state
of an object is changed (fabric.Object#hasStateChanged)
as well as for history (undo/redo) purposes
Type:
- Inherited From:
- Source:
stroke :String
When defined, an object is rendered via stroke and this property specifies its color
Type:
- String
- Inherited From:
- Source:
strokeDashArray :Array
Array specifying dash pattern of an object's stroke (stroke must be defined)
Type:
- Inherited From:
- Source:
strokeLineCap :String
Line endings style of an object's stroke (one of "butt", "round", "square")
Type:
- String
- Inherited From:
- Default Value:
- butt
- Source:
strokeLineJoin :String
Corner style of an object's stroke (one of "bevil", "round", "miter")
Type:
- String
- Inherited From:
- Default Value:
- miter
- Source:
strokeMiterLimit :Number
Maximum miter length (used for strokeLineJoin = "miter") of an object's stroke
Type:
- Number
- Inherited From:
- Default Value:
- 10
- Source:
strokeWidth :Number
Width of a stroke used to render this object
Type:
- Number
- Inherited From:
- Default Value:
- 1
- Source:
top :Number
Top position of an object. Note that by default it's relative to object top. You can change this by setting originY={top/center/bottom}
Type:
- Number
- Inherited From:
- Source:
transformMatrix :Array
Transform matrix (similar to SVG's transform matrix)
Type:
- Inherited From:
- Source:
transparentCorners :Boolean
When true, object's controlling corners are rendered as transparent inside (i.e. stroke instead of fill)
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
type :String
Type of an object
Type:
- String
- Overrides:
- Default Value:
- path-group
- Source:
visible :Boolean
When set to `false`, an object is not rendered on canvas
Type:
- Boolean
- Inherited From:
- Default Value:
- true
- Source:
width :Number
Object width
Type:
- Number
- Inherited From:
- Source:
Methods
(static) fromObject(object, callbackopt)
Creates fabric.PathGroup instance from an object representation
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
object |
Object | Object to create an instance from | |
callback |
function |
<optional> |
Callback to invoke when an fabric.PathGroup instance is created |
- Source:
_calcRotateMatrix() → {Array}
calculate rotation matrix of an object
- Inherited From:
- Source:
Returns:
rotation matrix for the object
- Type
- Array
_limitCacheSize(dims) → {Object|Object|Object|Object}
Limit the cache dimensions so that X * Y do not cross fabric.perfLimitSizeTotal
and each side do not cross fabric.cacheSideLimit
those numbers are configurable so that you can get as much detail as you want
making bargain with performances.
Parameters:
Name | Type | Description | |||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
dims |
Object |
Properties
|
- Inherited From:
- Source:
Returns:
-
.width width of canvas
- Type
- Object
-
.height height of canvas
- Type
- Object
-
.zoomX zoomX zoom value to unscale the canvas before drawing cache
- Type
- Object
-
.zoomY zoomY zoom value to unscale the canvas before drawing cache
- Type
- Object
_renderControls(ctx)
Renders controls and borders for the object
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to render on |
- Inherited From:
- Source:
_set(prop, value) → {fabric.PathGroup}
Sets certain property to a certain value
Parameters:
Name | Type | Description |
---|---|---|
prop |
String | |
value |
* |
- Overrides:
- fabric.Path#_set
- Source:
Returns:
thisArg
- Type
- fabric.PathGroup
_setupCompositeOperation(ctx)
Sets canvas globalCompositeOperation for specific object
custom composition operation for the particular object can be specifed using globalCompositeOperation property
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Rendering canvas context |
- Inherited From:
- Source:
adjustPosition(to)
Parameters:
Name | Type | Description |
---|---|---|
to |
String | One of 'left', 'center', 'right' |
- Inherited From:
- Source:
animate(property, value) → {fabric.Object}
Animates object's properties
Parameters:
Name | Type | Description |
---|---|---|
property |
String | Object | Property to animate (if string) or properties to animate (if object) |
value |
Number | Object | Value to animate property to (if string was given first) or options object |
- Inherited From:
- Source:
- Tutorials:
Returns:
thisArg
- Type
- fabric.Object
bringForward(intersectingopt) → {fabric.Object}
Moves an object up in stack of drawn objects
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
intersecting |
Boolean |
<optional> |
If `true`, send object in front of next upper intersecting object |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
bringToFront() → {fabric.Object}
Moves an object to the top of the stack of drawn objects
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
calcCoords() → {Object}
Calculate and returns the .coords of an object.
- Inherited From:
- Source:
Returns:
Object with tl, tr, br, bl ....
- Type
- Object
calcTransformMatrix(skipGroupopt) → {Array}
calculate trasform Matrix that represent current transformation from
object properties.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
skipGroup |
Boolean |
<optional> |
return transformMatrix for object and not go upward with parents |
- Inherited From:
- Source:
Returns:
matrix Transform Matrix for the object
- Type
- Array
center() → {fabric.Object}
Centers object vertically and horizontally on canvas to which is was added last
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
centerH() → {fabric.Object}
Centers object horizontally on canvas to which it was added last.
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
centerV() → {fabric.Object}
Centers object vertically on canvas to which it was added last.
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
clone(callback, propertiesToIncludeopt) → {fabric.Object}
Clones an instance, some objects are async, so using callback method will work for every object.
Using the direct return does not work for images and groups.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
callback |
function | Callback is invoked with a clone as a first argument | |
propertiesToInclude |
Array |
<optional> |
Any properties that you might want to additionally include in the output |
- Inherited From:
- Source:
Returns:
clone of an instance
- Type
- fabric.Object
cloneAsImage(callback, optionsopt) → {fabric.Object}
Creates an instance of fabric.Image out of an object
Parameters:
Name | Type | Attributes | Description | ||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
callback |
function | callback, invoked with an instance as a first argument | |||||||||
options |
Object |
<optional> |
for clone as image, passed to toDataURL
Properties
|
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
complexity() → {Number}
Returns number representation of object's complexity
- Overrides:
- Source:
Returns:
complexity
- Type
- Number
containsPoint(point, linesopt, absoluteopt, calculateopt) → {Boolean}
Checks if point is inside the object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
point |
fabric.Point | Point to check against | |
lines |
Object |
<optional> |
object returned from @method _getImageLines |
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if point is inside the object
- Type
- Boolean
drawBorders(ctx) → {fabric.Object}
Draws borders of an object's bounding box.
Requires public properties: width, height
Requires public options: padding, borderColor
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to draw on |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
drawBordersInGroup(ctx, options) → {fabric.Object}
Draws borders of an object's bounding box when it is inside a group.
Requires public properties: width, height
Requires public options: padding, borderColor
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to draw on |
options |
object | object representing current object parameters |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
drawCacheOnCanvas(ctx)
Paint the cached copy of the object on the target context.
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to render on |
- Inherited From:
- Source:
drawControls(ctx) → {fabric.Object}
Draws corners of an object's bounding box.
Requires public properties: width, height
Requires public options: cornerSize, padding
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to draw on |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
drawObject(ctx, noTransformopt)
Execute the drawing operation for an object on a specified context
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
ctx |
CanvasRenderingContext2D | Context to render on | |
noTransform |
Boolean |
<optional> |
When true, context is not transformed |
- Overrides:
- Source:
drawSelectionBackground(ctx) → {fabric.Object}
Draws a colored layer behind the object, inside its selection borders.
Requires public options: padding, selectionBackgroundColor
this function is called when the context is transformed
has checks to be skipped when the object is on a staticCanvas
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context to draw on |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
fxStraighten(callbacks) → {fabric.Object}
Same as fabric.Object.prototype.straighten but with animation
Parameters:
Name | Type | Description | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
callbacks |
Object | Object with callback functions
Properties
|
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
getAngle() → {Number}
Retrieves object's angle (in degrees)
- Inherited From:
- Source:
Returns:
- Type
- Number
getBoundingRect(absoluteopt, calculateopt) → {Object}
Returns coordinates of object's bounding rectangle (left, top, width, height)
the box is intented as aligned to axis of canvas.
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
Object with left, top, width, height properties
- Type
- Object
getBoundingRectHeight() → {Number}
Returns height of an object's bounding rectangle
- Inherited From:
- Deprecated:
- since 1.0.4
- Source:
Returns:
height value
- Type
- Number
getBoundingRectWidth() → {Number}
Returns width of an object's bounding rectangle
- Inherited From:
- Deprecated:
- since 1.0.4
- Source:
Returns:
width value
- Type
- Number
getCenterPoint() → {fabric.Point}
Returns the real center coordinates of the object
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
getClipTo() → {function}
Retrieves object's clipping function
- Inherited From:
- Source:
Returns:
- Type
- function
getCoords()
return correct set of coordinates for intersection
- Inherited From:
- Source:
getFill() → {String}
Retrieves object's fill
- Inherited From:
- Source:
Returns:
Fill value
- Type
- String
getFlipX() → {Boolean}
Retrieves object's flipX value
- Inherited From:
- Source:
Returns:
flipX value
- Type
- Boolean
getFlipY() → {Boolean}
Retrieves object's flipY value
- Inherited From:
- Source:
Returns:
flipY value
- Type
- Boolean
getHeight() → {Number}
Returns height of an object bounding box counting transformations
to be renamed in 2.0
- Inherited From:
- Source:
Returns:
height value
- Type
- Number
getLeft() → {Number}
Retrieves object's left position
- Inherited From:
- Source:
Returns:
Left value (in pixels)
- Type
- Number
getLocalPointer(e, pointeropt) → {Object}
Returns coordinates of a pointer relative to an object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
e |
Event | Event to operate upon | |
pointer |
Object |
<optional> |
Pointer to operate upon (instead of event) |
- Inherited From:
- Source:
Returns:
Coordinates of a pointer (x, y)
- Type
- Object
getObjects() → {Array}
Returns all paths in this path group
- Source:
Returns:
array of path objects included in this path group
- Type
- Array
getObjectScaling() → {Object}
Return the object scale factor counting also the group scaling
- Inherited From:
- Source:
Returns:
object with scaleX and scaleY properties
- Type
- Object
getOpacity() → {Number}
Retrieves object's opacity
- Inherited From:
- Source:
Returns:
Opacity value (0-1)
- Type
- Number
getOriginX() → {String}
Retrieves object's originX
- Inherited From:
- Source:
Returns:
originX value
- Type
- String
getOriginY() → {String}
Retrieves object's originY
- Inherited From:
- Source:
Returns:
originY value
- Type
- String
getPointByOrigin(originX, originY) → {fabric.Point}
Returns the coordinates of the object as if it has a different origin
Parameters:
Name | Type | Description |
---|---|---|
originX |
String | Horizontal origin: 'left', 'center' or 'right' |
originY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
getScaleX() → {Number}
Retrieves object's scaleX value
- Inherited From:
- Source:
Returns:
scaleX value
- Type
- Number
getScaleY() → {Number}
Retrieves object's scaleY value
- Inherited From:
- Source:
Returns:
scaleY value
- Type
- Number
getShadow() → {Object}
Retrieves object's shadow
- Inherited From:
- Source:
Returns:
Shadow instance
- Type
- Object
getStroke() → {String}
Retrieves object's stroke
- Inherited From:
- Source:
Returns:
stroke value
- Type
- String
getStrokeWidth() → {Number}
Retrieves object's strokeWidth
- Inherited From:
- Source:
Returns:
strokeWidth value
- Type
- Number
getSvgFilter() → {String}
Returns filter for svg shadow
- Inherited From:
- Source:
Returns:
- Type
- String
getSvgId() → {String}
Returns id attribute for svg output
- Inherited From:
- Source:
Returns:
- Type
- String
getSvgStyles(skipShadow) → {String}
Returns styles-string for svg-export
Parameters:
Name | Type | Description |
---|---|---|
skipShadow |
Boolean | a boolean to skip shadow filter output |
- Inherited From:
- Source:
Returns:
- Type
- String
getSvgTransform() → {String}
Returns transform-string for svg-export
- Inherited From:
- Source:
Returns:
- Type
- String
getSvgTransformMatrix() → {String}
Returns transform-string for svg-export from the transform matrix of single elements
- Inherited From:
- Source:
Returns:
- Type
- String
getTop() → {Number}
Retrieves object's top position
- Inherited From:
- Source:
Returns:
Top value (in pixels)
- Type
- Number
getTransformMatrix() → {Array}
Retrieves object's transformMatrix
- Inherited From:
- Source:
Returns:
transformMatrix
- Type
- Array
getViewportTransform() → {Boolean}
Retrieves viewportTransform from Object's canvas if possible
- Inherited From:
- Source:
Returns:
- Type
- Boolean
getVisible() → {Boolean}
Retrieves object's visible state
- Inherited From:
- Source:
Returns:
True if visible
- Type
- Boolean
getWidth() → {Number}
Returns width of an object bounding box counting transformations
- Inherited From:
- Source:
Returns:
width value
- Type
- Number
hasStateChanged(propertySetopt) → {Boolean}
Returns true if object state (one of its state properties) was changed
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
propertySet |
String |
<optional> |
optional name for the set of property we want to save |
- Inherited From:
- Source:
Returns:
true if instance' state has changed since `fabric.Object#saveState` was called
- Type
- Boolean
initialize(paths, optionsopt) → {fabric.PathGroup}
Constructor
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
paths |
Array | ||
options |
Object |
<optional> |
Options object |
- Overrides:
- Source:
Returns:
thisArg
- Type
- fabric.PathGroup
intersectsWithObject(other, absoluteopt, calculateopt) → {Boolean}
Checks if object intersects with another object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
other |
Object | Object to test | |
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if object intersects with another object
- Type
- Boolean
intersectsWithRect(pointTL, pointBR, absoluteopt, calculateopt) → {Boolean}
Checks if object intersects with an area formed by 2 points
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
pointTL |
Object | top-left point of area | |
pointBR |
Object | bottom-right point of area | |
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if object intersects with an area formed by 2 points
- Type
- Boolean
isCacheDirty()
Check if cache is dirty
- Overrides:
- Source:
isCaching() → {Boolean}
Check if this group or its parent group are caching, recursively up
- Source:
Returns:
- Type
- Boolean
isContainedWithinObject(other, absoluteopt, calculateopt) → {Boolean}
Checks if object is fully contained within area of another object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
other |
Object | Object to test | |
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if object is fully contained within area of another object
- Type
- Boolean
isContainedWithinRect(pointTL, pointBR, absoluteopt, calculateopt) → {Boolean}
Checks if object is fully contained within area formed by 2 points
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
pointTL |
Object | top-left point of area | |
pointBR |
Object | bottom-right point of area | |
absolute |
Boolean |
<optional> |
use coordinates without viewportTransform |
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if object is fully contained within area formed by 2 points
- Type
- Boolean
isControlVisible(controlName) → {Boolean}
Returns true if the specified control is visible, false otherwise.
Parameters:
Name | Type | Description |
---|---|---|
controlName |
String | The name of the control. Possible values are 'tl', 'tr', 'br', 'bl', 'ml', 'mt', 'mr', 'mb', 'mtr'. |
- Inherited From:
- Source:
Returns:
true if the specified control is visible, false otherwise
- Type
- Boolean
isOnScreen(calculateopt) → {Boolean}
Checks if object is contained within the canvas with current viewportTransform
the check is done stopping at first point that appear on screen
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
calculate |
Boolean |
<optional> |
use coordinates of current position instead of .oCoords |
- Inherited From:
- Source:
Returns:
true if object is fully contained within canvas
- Type
- Boolean
isSameColor() → {Boolean}
Returns true if all paths in this group are of same color
- Source:
Returns:
true if all paths are of the same color (`fill`)
- Type
- Boolean
isType(type) → {Boolean}
Returns true if specified type is identical to the type of an instance
Parameters:
Name | Type | Description |
---|---|---|
type |
String | Type to check against |
- Inherited From:
- Source:
Returns:
- Type
- Boolean
moveTo(index) → {fabric.Object}
Moves an object to specified level in stack of drawn objects
Parameters:
Name | Type | Description |
---|---|---|
index |
Number | New position of object |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
needsItsOwnCache()
When returns `true`, force the object to have its own cache, even if it is inside a group
it may be needed when your object behave in a particular way on the cache and always needs
its own isolated canvas to render correctly.
This function is created to be subclassed by custom classes.
since 1.7.12
- Inherited From:
- Source:
Returns:
false
onDeselect()
Callback; invoked right before object is about to go from active to inactive
- Inherited From:
- Source:
parseDimensionsFromPaths()
Calculate width and height based on paths contained
- Source:
remove() → {fabric.Object}
Removes object from canvas to which it was added last
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
render(ctx, noTransformopt)
Renders an object on a specified context
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
ctx |
CanvasRenderingContext2D | Context to render on | |
noTransform |
Boolean |
<optional> |
When true, context is not transformed |
- Inherited From:
- Source:
saveState(optionsopt) → {fabric.Object}
Saves state of an object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
options |
Object |
<optional> |
Object with additional `stateProperties` array to include when saving state |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
scale(value) → {fabric.Object}
Scales an object (equally by x and y)
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | Scale factor |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
scaleToHeight(value) → {fabric.Object}
Scales an object to a given height, with respect to bounding box (scaling by x/y equally)
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | New height value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
scaleToWidth(value) → {fabric.Object}
Scales an object to a given width, with respect to bounding box (scaling by x/y equally)
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | New width value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
sendBackwards(intersectingopt) → {fabric.Object}
Moves an object down in stack of drawn objects
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
intersecting |
Boolean |
<optional> |
If `true`, send object behind next lower intersecting object |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
sendToBack() → {fabric.Object}
Moves an object to the bottom of the stack of drawn objects
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setAngle(angle) → {fabric.Object}
Sets "angle" of an instance
Parameters:
Name | Type | Description |
---|---|---|
angle |
Number | Angle value (in degrees) |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setClipTo(clipTo) → {fabric.Object}
Sets object's clipping function
Parameters:
Name | Type | Description |
---|---|---|
clipTo |
function | Clipping function |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setColor(color) → {fabric.Object}
Sets "color" of an instance (alias of `set('fill', …)`)
Parameters:
Name | Type | Description |
---|---|---|
color |
String | Color value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setControlsVisibility(optionsopt) → {fabric.Object}
Sets the visibility state of object controls.
Parameters:
Name | Type | Attributes | Description | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object |
<optional> |
Options object
Properties
|
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setControlVisible(controlName, visible) → {fabric.Object}
Sets the visibility of the specified control.
Parameters:
Name | Type | Description |
---|---|---|
controlName |
String | The name of the control. Possible values are 'tl', 'tr', 'br', 'bl', 'ml', 'mt', 'mr', 'mb', 'mtr'. |
visible |
Boolean | true to set the specified control visible, false otherwise |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setCoords(ignoreZoomopt, skipAbsoluteopt) → {fabric.Object}
Sets corner position coordinates based on current angle, width and height
See https://github.com/kangax/fabric.js/wiki/When-to-call-setCoords
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
ignoreZoom |
Boolean |
<optional> |
set oCoords with or without the viewport transform. |
skipAbsolute |
Boolean |
<optional> |
skip calculation of aCoords, usefull in setViewportTransform |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setFill(value) → {fabric.Object}
Sets object's fill
Parameters:
Name | Type | Description |
---|---|---|
value |
String | Fill value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setFlipX(value) → {fabric.Object}
Sets object's flipX value
Parameters:
Name | Type | Description |
---|---|---|
value |
Boolean | flipX value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setFlipY(value) → {fabric.Object}
Sets object's flipY value
Parameters:
Name | Type | Description |
---|---|---|
value |
Boolean | flipY value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setGradient(property, optionsopt) → {fabric.Object}
Sets gradient (fill or stroke) of an object
Backwards incompatibility note: This method was named "setGradientFill" until v1.1.0
Parameters:
Name | Type | Attributes | Description | ||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
property |
String | Property name 'stroke' or 'fill' | |||||||||||||||||||||||||||||||||||||||||||||||||||
options |
Object |
<optional> |
Options object
Properties
|
- Inherited From:
- Source:
- See:
Returns:
thisArg
- Type
- fabric.Object
Examples
object.setGradient('fill', {
type: 'linear',
x1: -object.width / 2,
y1: 0,
x2: object.width / 2,
y2: 0,
colorStops: {
0: 'red',
0.5: '#005555',
1: 'rgba(0,0,255,0.5)'
}
});
canvas.renderAll();
object.setGradient('fill', {
type: 'radial',
x1: 0,
y1: 0,
x2: 0,
y2: 0,
r1: object.width / 2,
r2: 10,
colorStops: {
0: 'red',
0.5: '#005555',
1: 'rgba(0,0,255,0.5)'
}
});
canvas.renderAll();
setLeft(value) → {fabric.Object}
Sets object's left position
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | Left value (in pixels) |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setOnGroup()
This callback function is called by the parent group of an object every
time a non-delegated property changes on the group. It is passed the key
and value as parameters. Not adding in this function's signature to avoid
Travis build error about unused variables.
- Inherited From:
- Source:
setOpacity(value) → {fabric.Object}
Sets object's opacity
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | Opacity value (0-1) |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setOptions(optionsopt)
Sets object's properties from options
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
options |
Object |
<optional> |
Options object |
- Inherited From:
- Source:
setOriginX(value) → {fabric.Object}
Sets object's originX
Parameters:
Name | Type | Description |
---|---|---|
value |
String | originX value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setOriginY(value) → {fabric.Object}
Sets object's originY
Parameters:
Name | Type | Description |
---|---|---|
value |
String | originY value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setPatternFill(options) → {fabric.Object}
Sets pattern fill of an object
Parameters:
Name | Type | Description | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object | Options object
Properties
|
- Inherited From:
- Source:
- See:
Returns:
thisArg
- Type
- fabric.Object
Example
fabric.util.loadImage('http://fabric5.fabricjs.com/assets/escheresque_ste.png', function(img) {
object.setPatternFill({
source: img,
repeat: 'repeat'
});
canvas.renderAll();
});
setPositionByOrigin(pos, originX, originY) → {void}
Sets the position of the object taking into consideration the object's origin
Parameters:
Name | Type | Description |
---|---|---|
pos |
fabric.Point | The new position of the object |
originX |
String | Horizontal origin: 'left', 'center' or 'right' |
originY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- void
setScaleX(value) → {fabric.Object}
Sets object's scaleX value
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | scaleX value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setScaleY(value) → {fabric.Object}
Sets object's scaleY value
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | scaleY value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setShadow(optionsopt) → {fabric.Object}
Sets shadow of an object
Parameters:
Name | Type | Attributes | Description | |||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object | String |
<optional> |
Options object or string (e.g. "2px 2px 10px rgba(0,0,0,0.2)")
Properties
|
- Inherited From:
- Source:
- See:
Returns:
thisArg
- Type
- fabric.Object
Examples
object.setShadow('2px 2px 10px rgba(0,0,0,0.2)');
canvas.renderAll();
object.setShadow({
color: 'red',
blur: 10,
offsetX: 20,
offsetY: 20
});
canvas.renderAll();
setSourcePath(value) → {fabric.Object}
Sets sourcePath of an object
Parameters:
Name | Type | Description |
---|---|---|
value |
String | Value to set sourcePath to |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setStroke(value) → {fabric.Object}
Sets object's stroke
Parameters:
Name | Type | Description |
---|---|---|
value |
String | stroke value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setStrokeWidth(value) → {fabric.Object}
Sets object's strokeWidth
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | strokeWidth value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setTop(value) → {fabric.Object}
Sets object's top position
Parameters:
Name | Type | Description |
---|---|---|
value |
Number | Top value (in pixels) |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setTransformMatrix(transformMatrix) → {fabric.Object}
Sets object's transformMatrix
Parameters:
Name | Type | Description |
---|---|---|
transformMatrix |
Array |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setupState(optionsopt) → {fabric.Object}
Setups state of an object
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
options |
Object |
<optional> |
Object with additional `stateProperties` array to include when saving state |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
setVisible(value) → {fabric.Object}
Sets object's visible state
Parameters:
Name | Type | Description |
---|---|---|
value |
Boolean | visible value |
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
shouldCache() → {Boolean}
Decide if the object should cache or not.
objectCaching is a global flag, wins over everything
needsItsOwnCache should be used when the object drawing method requires
a cache step. None of the fabric classes requires it.
Generally you do not cache objects in groups because the group outside is cached.
- Overrides:
- Source:
Returns:
- Type
- Boolean
straighten() → {fabric.Object}
Straightens an object (rotating it from current angle to one of 0, 90, 180, 270, etc. depending on which is closer)
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
toDatalessObject(propertiesToIncludeopt) → {Object}
Returns dataless object representation of this path group
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
propertiesToInclude |
Array |
<optional> |
Any properties that you might want to additionally include in the output |
- Overrides:
- Source:
Returns:
dataless object representation of an instance
- Type
- Object
toDataURL(options) → {String}
Converts an object into a data-url-like string
Parameters:
Name | Type | Description | |||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
options |
Object | Options object
Properties
|
- Inherited From:
- Source:
Returns:
Returns a data: URL containing a representation of the object in the format specified by options.format
- Type
- String
toJSON(propertiesToIncludeopt) → {Object}
Returns a JSON representation of an instance
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
propertiesToInclude |
Array |
<optional> |
Any properties that you might want to additionally include in the output |
- Inherited From:
- Source:
Returns:
JSON
- Type
- Object
toLocalPoint(point, originX, originY) → {fabric.Point}
Returns the point in local coordinates
Parameters:
Name | Type | Description |
---|---|---|
point |
fabric.Point | The point relative to the global coordinate system |
originX |
String | Horizontal origin: 'left', 'center' or 'right' |
originY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
toObject(propertiesToIncludeopt) → {Object}
Returns object representation of this path group
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
propertiesToInclude |
Array |
<optional> |
Any properties that you might want to additionally include in the output |
- Overrides:
- Source:
Returns:
object representation of an instance
- Type
- Object
toString() → {String}
Returns a string representation of this path group
- Overrides:
- Source:
Returns:
string representation of an object
- Type
- String
toSVG(reviveropt) → {String}
Returns svg representation of an instance
Parameters:
Name | Type | Attributes | Description |
---|---|---|---|
reviver |
function |
<optional> |
Method for further parsing of svg representation. |
- Overrides:
- Source:
Returns:
svg representation of an instance
- Type
- String
transform(ctx, fromLeft)
Transforms context when rendering an object
Parameters:
Name | Type | Description |
---|---|---|
ctx |
CanvasRenderingContext2D | Context |
fromLeft |
Boolean | When true, context is transformed to object's top/left corner. This is used when rendering text on Node |
- Inherited From:
- Source:
translateToCenterPoint(point, originX, originY) → {fabric.Point}
Translates the coordinates from origin to center coordinates (based on the object's dimensions)
Parameters:
Name | Type | Description |
---|---|---|
point |
fabric.Point | The point which corresponds to the originX and originY params |
originX |
String | Horizontal origin: 'left', 'center' or 'right' |
originY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
translateToGivenOrigin(point, fromOriginX, fromOriginY, toOriginX, toOriginY) → {fabric.Point}
Translates the coordinates from origin to center coordinates (based on the object's dimensions)
Parameters:
Name | Type | Description |
---|---|---|
point |
fabric.Point | The point which corresponds to the originX and originY params |
fromOriginX |
String | Horizontal origin: 'left', 'center' or 'right' |
fromOriginY |
String | Vertical origin: 'top', 'center' or 'bottom' |
toOriginX |
String | Horizontal origin: 'left', 'center' or 'right' |
toOriginY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
translateToOriginPoint(center, originX, originY) → {fabric.Point}
Translates the coordinates from center to origin coordinates (based on the object's dimensions)
Parameters:
Name | Type | Description |
---|---|---|
center |
fabric.Point | The point which corresponds to center of the object |
originX |
String | Horizontal origin: 'left', 'center' or 'right' |
originY |
String | Vertical origin: 'top', 'center' or 'bottom' |
- Inherited From:
- Source:
Returns:
- Type
- fabric.Point
viewportCenter() → {fabric.Object}
Centers object on current viewport of canvas to which it was added last.
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
viewportCenterH() → {fabric.Object}
Centers object horizontally on current viewport of canvas to which it was added last.
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
viewportCenterV() → {fabric.Object}
Centers object vertically on current viewport of canvas to which it was added last.
You might need to call `setCoords` on an object after centering, to update controls area.
- Inherited From:
- Source:
Returns:
thisArg
- Type
- fabric.Object
willDrawShadow() → {Boolean}
Check if this object or a child object will cast a shadow
- Overrides:
- Source:
Returns:
- Type
- Boolean