setPattern examples
Used in documentation (jsdoc tag)
by codert
HTML
<script src="https://rawgithub.com/kangax/fabric.js/master/dist/fabric.js"></script>
<canvas id="c" width="400" height="400"></canvas>
<button id="toggle">Toggle repeat</button>
CSS
canvas {
border: 1px solid #999;
}
button {
margin-top: 20px;
}
JavaScript
// Do some initializing stuff
fabric.Object.prototype.set({
transparentCorners: false,
cornerColor: 'rgba(102,153,255,0.5)',
cornerSize: 12,
padding: 5
});
// initialize fabric canvas and assign to global windows object for debug
var canvas = window._canvas = new fabric.Canvas('c');
var rect = new fabric.Rect({
width: 150,
height: 150,
fill: 'yellow'
});
canvas.add(rect);
rect.center().setCoords();
fabric.util.loadImage('http://fabricjs.com/assets/escheresque_ste.png', function (img) {
rect.setPatternFill(null);
canvas.renderAll();
});
fabric.util.addListener(document.getElementById('toggle'), 'click', function () {
var obj = canvas.item(0);
if (!obj.fill instanceof fabric.Pattern) return;
obj.fill.repeat = obj.fill.repeat === 'repeat'
? 'repeat-x'
: obj.fill.repeat === 'repeat-x'
? 'repeat-y'
: obj.fill.repeat === 'repeat-y'
? 'no-repeat'
: 'repeat';
canvas.renderAll();
});