mirror of
https://github.com/konvajs/konva.git
synced 2025-04-28 21:39:30 +08:00
Adding maxWidth support for fillText and strokeText
This commit is contained in:
parent
28f7fc246d
commit
cd276169d7
@ -18,7 +18,8 @@ Kinetic.Text = function(config) {
|
||||
align: 'left',
|
||||
verticalAlign: 'top',
|
||||
padding: 0,
|
||||
fontStyle: 'normal'
|
||||
fontStyle: 'normal',
|
||||
maxWidth: undefined
|
||||
});
|
||||
|
||||
this.shapeType = "Text";
|
||||
@ -65,7 +66,13 @@ Kinetic.Text = function(config) {
|
||||
// draw text
|
||||
if(this.attrs.textFill !== undefined) {
|
||||
context.fillStyle = this.attrs.textFill;
|
||||
context.fillText(this.attrs.text, tx, ty);
|
||||
|
||||
if (this.attrs.maxWidth !== undefined) {
|
||||
context.fillText(this.attrs.text, tx, ty, this.attrs.maxWidth);
|
||||
}
|
||||
else {
|
||||
context.fillText(this.attrs.text, tx, ty);
|
||||
}
|
||||
}
|
||||
if(this.attrs.textStroke !== undefined || this.attrs.textStrokeWidth !== undefined) {
|
||||
// defaults
|
||||
@ -77,7 +84,13 @@ Kinetic.Text = function(config) {
|
||||
}
|
||||
context.lineWidth = this.attrs.textStrokeWidth;
|
||||
context.strokeStyle = this.attrs.textStroke;
|
||||
context.strokeText(this.attrs.text, tx, ty);
|
||||
|
||||
if (this.attrs.maxWidth !== undefined) {
|
||||
context.strokeText(this.attrs.text, tx, ty, this.attrs.maxWidth);
|
||||
}
|
||||
else {
|
||||
context.strokeText(this.attrs.text, tx, ty);
|
||||
}
|
||||
}
|
||||
};
|
||||
// call super constructor
|
||||
@ -242,6 +255,19 @@ Kinetic.Text.prototype = {
|
||||
width: metrics.width,
|
||||
height: parseInt(this.attrs.fontSize, 10)
|
||||
};
|
||||
},
|
||||
/**
|
||||
* get max width in pixels
|
||||
*/
|
||||
getMaxWidth: function() {
|
||||
return this.attrs.maxWidth;
|
||||
},
|
||||
/**
|
||||
* set max width
|
||||
* @param {float} max width
|
||||
*/
|
||||
setMaxWidth: function(maxWidth) {
|
||||
this.attrs.maxWidth = maxWidth;
|
||||
}
|
||||
};
|
||||
// extend Shape
|
||||
|
Loading…
Reference in New Issue
Block a user