Fabric.js HTML5 Canvas Library
fabricjs.com
1
Leaving SiteNav
External Link Disclaimer
You are about to visit fabricjs.com. This website is not operated by us. We are not responsible for its content or privacy practices.
About this website
Fabric.js is a powerful and simple JavaScript library built on top of the HTML5 canvas element, providing an interactive object model that makes canvas programming intuitive and productive for applications ranging from image editors and design tools to data visualizations and games. Originally created by Juriy Zaytsev in 2010, the library has grown to version 7.0 with contributions from over 30 developers and adoption by major brands including Adobe, Canva, PicMonkey, and Polarr. The core abstraction replaces the low-level imperative canvas drawing API with a retained-mode scene graph where each visual element is represented as a first-class object with properties for position, size, rotation, opacity, fill, stroke, shadow, and transformation matrix. The object model supports fundamental shapes including rectangles, circles, ellipses, lines, polygons, and text, along with image objects loaded from URLs, data URLs, or HTMLImageElement sources. The text editing subsystem provides on-canvas rich text editing with font family and size control, bold and italic styling, text alignment, line height, char spacing, IME support for CJK input methods, and curved text along paths. Image processing features include WebGL-accelerated and Canvas2D fallback filters for brightness, contrast, saturation, blur, sharpen, emboss, invert, grayscale, sepia, pixelate, noise, vignette, gradient transparency, and custom convolution kernels. Filters can be composed into chains and applied selectively to regions. SVG import and export round-trip the canvas state through an SVG parser that converts path, polygon, line, circle, ellipse, rect, text, image, and group elements into Fabric objects, and a serializer that reconstructs the identical SVG. Object grouping, clip paths, animation with easing functions, multi-touch gesture handling, freehand drawing brushes, and an extensible subclassing API complete the feature set.
Statistics
1
Views
0
Clicks
0
Like
0
Dislike