mirror of
https://github.com/konvajs/konva.git
synced 2026-01-22 21:02:26 +08:00
fix text rendering. fix #1634
This commit is contained in:
@@ -9,6 +9,7 @@ import {
|
||||
loadImage,
|
||||
isBrowser,
|
||||
isNode,
|
||||
compareCanvases,
|
||||
} from './test-utils';
|
||||
|
||||
describe('Text', function () {
|
||||
@@ -987,6 +988,40 @@ describe('Text', function () {
|
||||
assert.equal(layer.getContext().getTrace(), trace);
|
||||
});
|
||||
|
||||
it('text with underline and shadow', function () {
|
||||
var stage = addStage();
|
||||
var layer = new Konva.Layer();
|
||||
|
||||
var text = new Konva.Text({
|
||||
text: 'Test',
|
||||
fill: 'black',
|
||||
fontSize: 40,
|
||||
textDecoration: 'underline',
|
||||
shadowEnabled: true,
|
||||
shadowColor: 'red',
|
||||
shadowOffsetX: 15,
|
||||
shadowOffsetY: 15,
|
||||
});
|
||||
|
||||
layer.add(text);
|
||||
stage.add(layer);
|
||||
|
||||
var trace =
|
||||
'clearRect();save();shadowColor;shadowBlur;shadowOffsetX;shadowOffsetY;drawImage();restore();';
|
||||
|
||||
assert.equal(layer.getContext().getTrace(true), trace);
|
||||
|
||||
// now check result visually
|
||||
// text with red shadow is the same as red text with back text on top
|
||||
const group = new Konva.Group({});
|
||||
layer.add(group);
|
||||
group.add(text.clone({ shadowEnabled: false, x: 15, y: 15, fill: 'red' }));
|
||||
group.add(text.clone({ shadowEnabled: false }));
|
||||
const groupCanvas = group.toCanvas();
|
||||
|
||||
compareCanvases(groupCanvas, text.toCanvas(), 200);
|
||||
});
|
||||
|
||||
// ======================================================
|
||||
it('change font size should update text data', function () {
|
||||
var stage = addStage();
|
||||
|
||||
Reference in New Issue
Block a user