Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Handler

Main handler for Canvas

implements

{HandlerOptions}

Hierarchy

  • Handler

Implements

Index

Constructors

Properties

Methods

Constructors

constructor

Properties

Optional activeLine

activeLine: any

Optional activeSelectionOption

activeSelectionOption: Partial<FabricObjectOption<ActiveSelection>> = defaults.activeSelectionOption

Optional activeShape

activeShape: any

alignmentHandler

alignmentHandler: AlignmentHandler

animationHandler

animationHandler: AnimationHandler

canvas

canvas: FabricCanvas

Optional canvasOption

canvasOption: CanvasOption = defaults.canvasOption

chartHandler

chartHandler: ChartHandler

Private clipboard

clipboard: any

Copied object

container

container: HTMLDivElement

contextmenuHandler

contextmenuHandler: ContextmenuHandler

cropHandler

cropHandler: CropHandler

drawingHandler

drawingHandler: DrawingHandler

editable

editable: boolean

elementHandler

elementHandler: ElementHandler

eventHandler

eventHandler: EventHandler

Optional fabricObjects

fabricObjects: FabricObjects = CanvasObject

gridHandler

gridHandler: GridHandler

Optional gridOption

gridOption: GridOption = defaults.gridOption

guidelineHandler

guidelineHandler: GuidelineHandler

Optional guidelineOption

guidelineOption: GuidelineOption = defaults.guidelineOption

handlers

handlers: {}

Type declaration

Optional height

height: number

id

id: string

imageHandler

imageHandler: ImageHandler

interactionHandler

interactionHandler: InteractionHandler

interactionMode

interactionMode: InteractionMode

isCut

isCut: boolean = false

Private isRequsetAnimFrame

isRequsetAnimFrame: boolean = false

Optional keyEvent

keyEvent: KeyEvent = defaults.keyEvent

Optional lineArray

lineArray: any[]

linkHandler

linkHandler: LinkHandler

maxZoom

maxZoom: number

minZoom

minZoom: number

nodeHandler

nodeHandler: NodeHandler

objectMap

objectMap: Record<string, FabricObject>

Optional objectOption

objectOption: FabricObjectOption = defaults.objectOption

objects

objects: FabricObject[]

Optional onAdd

onAdd: (object: FabricObject) => void

Type declaration

Optional onClick

onClick: (canvas: FabricCanvas, target: FabricObject) => void

Type declaration

Optional onContext

onContext: (el: HTMLDivElement, e: MouseEvent, target?: FabricObject) => Promise<any>

Type declaration

    • (el: HTMLDivElement, e: MouseEvent, target?: FabricObject): Promise<any>
    • Parameters

      • el: HTMLDivElement
      • e: MouseEvent
      • Optional target: FabricObject

      Returns Promise<any>

Optional onDblClick

onDblClick: (canvas: FabricCanvas, target: FabricObject) => void

Type declaration

Optional onInteraction

onInteraction: (interactionMode: InteractionMode) => void

Type declaration

Optional onLoad

onLoad: (handler: Handler, canvas?: Canvas) => void

Type declaration

    • (handler: Handler, canvas?: Canvas): void
    • Parameters

      • handler: Handler
      • Optional canvas: Canvas

      Returns void

Optional onModified

onModified: (target: FabricObject) => void

Type declaration

Optional onRemove

onRemove: (target: FabricObject) => void

Type declaration

Optional onSelect

onSelect: (target: FabricObject) => void

Type declaration

Optional onTooltip

onTooltip: (el: HTMLDivElement, target?: FabricObject) => Promise<any>

Type declaration

    • Parameters

      Returns Promise<any>

Optional onTransaction

onTransaction: (transaction: TransactionEvent) => void

Type declaration

Optional onZoom

onZoom: (zoomRatio: number) => void

Type declaration

    • (zoomRatio: number): void
    • Parameters

      • zoomRatio: number

      Returns void

Optional pointArray

pointArray: any[]

portHandler

portHandler: PortHandler

Optional prevTarget

prevTarget: FabricObject

Optional propertiesToInclude

propertiesToInclude: string[] = defaults.propertiesToInclude

Private requestFrame

requestFrame: any

shortcutHandler

shortcutHandler: ShortcutHandler

Optional target

target: FabricObject

tooltipHandler

tooltipHandler: TooltipHandler

transactionHandler

transactionHandler: TransactionHandler

Optional width

width: number

workarea

workarea: WorkareaObject

workareaHandler

workareaHandler: WorkareaHandler

Optional workareaOption

workareaOption: WorkareaOption = defaults.workareaOption

zoom

zoom: number = 1

Optional zoomEnabled

zoomEnabled: boolean

zoomHandler

zoomHandler: ZoomHandler

zoomStep

zoomStep: number = 0.05

Methods

add

  • add(obj: FabricObjectOption, centered?: boolean, loaded?: boolean, group?: boolean): Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }
  • Add object

    Parameters

    • obj: FabricObjectOption
    • Default value centered: boolean = true
    • Default value loaded: boolean = false
    • Default value group: boolean = false

    Returns Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }

addGroup

  • addGroup(obj: FabricGroup): Group & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & { objects?: FabricObject[] }
  • Add group object

    Parameters

    Returns Group & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & { objects?: FabricObject[] }

addImage

  • addImage(obj: FabricImage): Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & Image & { _element?: any; file?: File; filters?: IFilter[]; src?: string }
  • Add iamge object

    Parameters

    Returns Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & Image & { _element?: any; file?: File; filters?: IFilter[]; src?: string }

bringForward

  • bringForward(): void

bringToFront

  • bringToFront(): void

centerObject

clear

  • clear(includeWorkarea?: boolean): void

copy

  • copy(): boolean

copyToClipboard

  • copyToClipboard(value: any): void

cut

  • cut(): void

destroy

  • destroy(): void

duplicate

  • duplicate(): void

duplicateById

  • duplicateById(id: string): boolean

exportJSON

  • exportJSON(): (Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty })[]
  • Export json

    Returns (Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty })[]

find

  • find(obj: FabricObject): Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }
  • Find object by object

    Parameters

    Returns Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }

findById

findOriginById

  • findOriginById(id: string): Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }
  • Find object in origin list

    Parameters

    • id: string

    Returns Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }

findOriginByIdWithIndex

  • findOriginByIdWithIndex(id: string): {} | { index: number; object: undefined }

getObjects

importJSON

initCallback

initHandler

  • initHandler(): void

initOption

initialize

originScaleToResize

  • originScaleToResize(obj: FabricObject, width: number, height: number): void

paste

  • paste(): boolean

registerHandler

remove

removeById

  • removeById(id: string): void

removeOriginById

  • removeOriginById(id: string): void

rotate

  • rotate(angle: number): void

saveCanvasImage

  • saveCanvasImage(option?: { format: string; name: string; quality: number }): void
  • Save canvas as image

    Parameters

    • Default value option: { format: string; name: string; quality: number } = { name: 'New Image', format: 'png', quality: 1 }
      • format: string
      • name: string
      • quality: number

    Returns void

saveImage

  • saveImage(targetObject: FabricObject, option?: { format: string; name: string; quality: number }): void
  • Save target object as image

    Parameters

    • targetObject: FabricObject
    • Default value option: { format: string; name: string; quality: number } = { name: 'New Image', format: 'png', quality: 1 }
      • format: string
      • name: string
      • quality: number

    Returns void

scaleToResize

  • scaleToResize(width: number, height: number): void

select

selectAll

  • selectAll(): void

selectById

  • selectById(id: string): void

sendBackwards

  • sendBackwards(): void

sendToBack

  • sendToBack(): void

set

setActiveSelectionOption

  • setActiveSelectionOption(activeSelectionOption: Partial<FabricObjectOption<ActiveSelection>>): void

setById

  • setById(id: string, key: string, value: any): void

setByObject

  • setByObject(obj: any, key: string, value: any): void

setByPartial

setCanvasOption

setFabricObjects

setGridOption

setGuidelineOption

setImage

  • setImage(obj: FabricImage, source?: File | string, keepSize?: boolean, options?: IImageOptions): Promise<FabricImage>

setImageById

  • setImageById(id: string, source: any, keepSize?: boolean): Promise<Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & Image & { _element?: any; file?: File; filters?: IFilter[]; src?: string }>
  • Set image by id

    Parameters

    • id: string
    • source: any
    • Optional keepSize: boolean

    Returns Promise<Object & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty } & Image & { _element?: any; file?: File; filters?: IFilter[]; src?: string }>

setKeyEvent

setObject

setObjectOption

setPropertiesToInclude

  • setPropertiesToInclude(propertiesToInclude: string[]): void

setShadow

  • setShadow(option: IShadowOptions): void

setSvg

  • setSvg(obj: SvgObject, source?: File | string, keepSize?: boolean, xmlString?: boolean): Promise<SvgObject>

setVisible

  • setVisible(visible?: boolean): void

setWorkareaOption

startRequestAnimFrame

  • startRequestAnimFrame(): void

stopRequestAnimFrame

  • stopRequestAnimFrame(): void

toActiveSelection

toGroup

  • toGroup(target?: FabricObject): Group & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }
  • Active selection to group

    Parameters

    Returns Group & IObjectOptions & { animating?: boolean; animation?: AnimationProperty; anime?: AnimeInstance; class?: string; clickable?: boolean; cloneable?: boolean; dblclick?: boolean; deletable?: boolean; description?: string; editable?: boolean; id?: string; link?: LinkProperty; locked?: boolean; originAngle?: number; originFill?: string | Pattern | Gradient; originLeft?: number; originOpacity?: number; originRotation?: number; originScaleX?: number; originScaleY?: number; originStroke?: string; originTop?: number; parentId?: string; rotation?: number; superType?: string; tooltip?: TooltipProperty }

Generated using TypeDoc