@leafer-draw/miniapp 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/miniapp.esm.js +38 -23
- package/dist/miniapp.esm.min.js +1 -1
- package/dist/miniapp.module.js +101 -56
- package/dist/miniapp.module.min.js +1 -1
- package/package.json +7 -7
package/dist/miniapp.module.js
CHANGED
|
@@ -48,6 +48,8 @@ const I$1 = IncrementId;
|
|
|
48
48
|
const { round, pow: pow$1, PI: PI$4 } = Math;
|
|
49
49
|
const MathHelper = {
|
|
50
50
|
within(value, min, max) {
|
|
51
|
+
if (typeof min === 'object')
|
|
52
|
+
max = min.max, min = min.min;
|
|
51
53
|
if (min !== undefined && value < min)
|
|
52
54
|
value = min;
|
|
53
55
|
if (max !== undefined && value > max)
|
|
@@ -150,10 +152,10 @@ const MatrixHelper = {
|
|
|
150
152
|
t.e += x;
|
|
151
153
|
t.f += y;
|
|
152
154
|
},
|
|
153
|
-
translateInner(t, x, y,
|
|
155
|
+
translateInner(t, x, y, hasOrigin) {
|
|
154
156
|
t.e += t.a * x + t.c * y;
|
|
155
157
|
t.f += t.b * x + t.d * y;
|
|
156
|
-
if (
|
|
158
|
+
if (hasOrigin)
|
|
157
159
|
t.e -= x, t.f -= y;
|
|
158
160
|
},
|
|
159
161
|
scale(t, scaleX, scaleY = scaleX) {
|
|
@@ -312,7 +314,7 @@ const MatrixHelper = {
|
|
|
312
314
|
to.y -= (f * a - e * b) * s;
|
|
313
315
|
}
|
|
314
316
|
},
|
|
315
|
-
setLayout(t, layout, origin, bcChanged) {
|
|
317
|
+
setLayout(t, layout, origin, around, bcChanged) {
|
|
316
318
|
const { x, y, scaleX, scaleY } = layout;
|
|
317
319
|
if (bcChanged === undefined)
|
|
318
320
|
bcChanged = layout.rotation || layout.skewX || layout.skewY;
|
|
@@ -344,10 +346,10 @@ const MatrixHelper = {
|
|
|
344
346
|
}
|
|
345
347
|
t.e = x;
|
|
346
348
|
t.f = y;
|
|
347
|
-
if (origin)
|
|
348
|
-
M$6.translateInner(t, -origin.x, -origin.y,
|
|
349
|
+
if (origin = origin || around)
|
|
350
|
+
M$6.translateInner(t, -origin.x, -origin.y, !around);
|
|
349
351
|
},
|
|
350
|
-
getLayout(t, origin, firstSkewY) {
|
|
352
|
+
getLayout(t, origin, around, firstSkewY) {
|
|
351
353
|
const { a, b, c, d, e, f } = t;
|
|
352
354
|
let x = e, y = f, scaleX, scaleY, rotation, skewX, skewY;
|
|
353
355
|
if (b || c) {
|
|
@@ -376,9 +378,11 @@ const MatrixHelper = {
|
|
|
376
378
|
scaleY = d;
|
|
377
379
|
rotation = skewX = skewY = 0;
|
|
378
380
|
}
|
|
379
|
-
if (origin) {
|
|
381
|
+
if (origin = around || origin) {
|
|
380
382
|
x += origin.x * a + origin.y * c;
|
|
381
383
|
y += origin.x * b + origin.y * d;
|
|
384
|
+
if (!around)
|
|
385
|
+
x -= origin.x, y -= origin.y;
|
|
382
386
|
}
|
|
383
387
|
return { x, y, scaleX, scaleY, rotation, skewX, skewY };
|
|
384
388
|
},
|
|
@@ -706,12 +710,12 @@ class Matrix {
|
|
|
706
710
|
toInnerPoint(outer, to, distance) {
|
|
707
711
|
MatrixHelper.toInnerPoint(this, outer, to, distance);
|
|
708
712
|
}
|
|
709
|
-
setLayout(data, origin) {
|
|
710
|
-
MatrixHelper.setLayout(this, data, origin);
|
|
713
|
+
setLayout(data, origin, around) {
|
|
714
|
+
MatrixHelper.setLayout(this, data, origin, around);
|
|
711
715
|
return this;
|
|
712
716
|
}
|
|
713
|
-
getLayout(origin, firstSkewY) {
|
|
714
|
-
return MatrixHelper.getLayout(this, origin, firstSkewY);
|
|
717
|
+
getLayout(origin, around, firstSkewY) {
|
|
718
|
+
return MatrixHelper.getLayout(this, origin, around, firstSkewY);
|
|
715
719
|
}
|
|
716
720
|
withScale(scaleX, scaleY) {
|
|
717
721
|
return MatrixHelper.withScale(this, scaleX, scaleY);
|
|
@@ -1999,7 +2003,7 @@ class LeaferCanvasBase extends Canvas$1 {
|
|
|
1999
2003
|
DataHelper.copyAttrs(this.size, size, canvasSizeAttrs);
|
|
2000
2004
|
this.size.pixelRatio || (this.size.pixelRatio = 1);
|
|
2001
2005
|
this.bounds = new Bounds(0, 0, this.width, this.height);
|
|
2002
|
-
if (!this.unreal) {
|
|
2006
|
+
if (this.context && !this.unreal) {
|
|
2003
2007
|
this.updateViewSize();
|
|
2004
2008
|
this.smooth = this.config.smooth;
|
|
2005
2009
|
}
|
|
@@ -2172,7 +2176,7 @@ class LeaferCanvasBase extends Canvas$1 {
|
|
|
2172
2176
|
this.manager ? this.manager.recycle(this) : this.destroy();
|
|
2173
2177
|
}
|
|
2174
2178
|
}
|
|
2175
|
-
updateRender() { }
|
|
2179
|
+
updateRender(_bounds) { }
|
|
2176
2180
|
unrealCanvas() { }
|
|
2177
2181
|
destroy() {
|
|
2178
2182
|
this.manager = this.view = this.parentView = null;
|
|
@@ -4066,8 +4070,13 @@ const LeafHelper = {
|
|
|
4066
4070
|
zoomOfLocal(t, origin, scaleX, scaleY = scaleX, resize) {
|
|
4067
4071
|
copy$6(matrix, t.__localMatrix);
|
|
4068
4072
|
scaleOfOuter$2(matrix, origin, scaleX, scaleY);
|
|
4069
|
-
|
|
4070
|
-
|
|
4073
|
+
if (t.origin || t.around) {
|
|
4074
|
+
L.setTransform(t, matrix, resize);
|
|
4075
|
+
}
|
|
4076
|
+
else {
|
|
4077
|
+
moveByMatrix(t, matrix);
|
|
4078
|
+
t.scaleResize(scaleX, scaleY, resize !== true);
|
|
4079
|
+
}
|
|
4071
4080
|
},
|
|
4072
4081
|
rotateOfWorld(t, origin, angle) {
|
|
4073
4082
|
L.rotateOfLocal(t, getTempLocal(t, origin), angle);
|
|
@@ -4075,8 +4084,13 @@ const LeafHelper = {
|
|
|
4075
4084
|
rotateOfLocal(t, origin, angle) {
|
|
4076
4085
|
copy$6(matrix, t.__localMatrix);
|
|
4077
4086
|
rotateOfOuter$2(matrix, origin, angle);
|
|
4078
|
-
|
|
4079
|
-
|
|
4087
|
+
if (t.origin || t.around) {
|
|
4088
|
+
L.setTransform(t, matrix);
|
|
4089
|
+
}
|
|
4090
|
+
else {
|
|
4091
|
+
moveByMatrix(t, matrix);
|
|
4092
|
+
t.rotation = MathHelper.formatRotation(t.rotation + angle);
|
|
4093
|
+
}
|
|
4080
4094
|
},
|
|
4081
4095
|
skewOfWorld(t, origin, skewX, skewY, resize) {
|
|
4082
4096
|
L.skewOfLocal(t, getTempLocal(t, origin), skewX, skewY, resize);
|
|
@@ -4099,7 +4113,7 @@ const LeafHelper = {
|
|
|
4099
4113
|
L.setTransform(t, matrix, resize);
|
|
4100
4114
|
},
|
|
4101
4115
|
setTransform(t, transform, resize) {
|
|
4102
|
-
const layout = getLayout(transform);
|
|
4116
|
+
const layout = getLayout(transform, t.origin && L.getInnerOrigin(t, t.origin), t.around && L.getInnerOrigin(t, t.around));
|
|
4103
4117
|
if (resize) {
|
|
4104
4118
|
const scaleX = layout.scaleX / t.scaleX;
|
|
4105
4119
|
const scaleY = layout.scaleY / t.scaleY;
|
|
@@ -4112,13 +4126,19 @@ const LeafHelper = {
|
|
|
4112
4126
|
t.set(layout);
|
|
4113
4127
|
}
|
|
4114
4128
|
},
|
|
4129
|
+
getFlipTransform(t, axis) {
|
|
4130
|
+
const m = getMatrixData();
|
|
4131
|
+
const sign = axis === 'x' ? 1 : -1;
|
|
4132
|
+
scaleOfOuter$2(m, L.getLocalOrigin(t, 'center'), -1 * sign, 1 * sign);
|
|
4133
|
+
return m;
|
|
4134
|
+
},
|
|
4115
4135
|
getLocalOrigin(t, origin) {
|
|
4116
4136
|
return PointHelper.tempToOuterOf(L.getInnerOrigin(t, origin), t.localTransform);
|
|
4117
4137
|
},
|
|
4118
4138
|
getInnerOrigin(t, origin) {
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
return
|
|
4139
|
+
const innerOrigin = {};
|
|
4140
|
+
AroundHelper.toPoint(origin, t.boxBounds, innerOrigin);
|
|
4141
|
+
return innerOrigin;
|
|
4122
4142
|
},
|
|
4123
4143
|
getRelativeWorld(t, relative, temp) {
|
|
4124
4144
|
copy$6(matrix, t.worldTransform);
|
|
@@ -4545,7 +4565,10 @@ const LeafEventer = {
|
|
|
4545
4565
|
on(type, listener, options) {
|
|
4546
4566
|
let capture, once;
|
|
4547
4567
|
if (options) {
|
|
4548
|
-
if (
|
|
4568
|
+
if (options === 'once') {
|
|
4569
|
+
once = true;
|
|
4570
|
+
}
|
|
4571
|
+
else if (typeof options === 'boolean') {
|
|
4549
4572
|
capture = options;
|
|
4550
4573
|
}
|
|
4551
4574
|
else {
|
|
@@ -4576,7 +4599,7 @@ const LeafEventer = {
|
|
|
4576
4599
|
if (listener) {
|
|
4577
4600
|
let capture;
|
|
4578
4601
|
if (options)
|
|
4579
|
-
capture = typeof options === 'boolean' ? options : options.capture;
|
|
4602
|
+
capture = typeof options === 'boolean' ? options : (options === 'once' ? false : options.capture);
|
|
4580
4603
|
let events, index;
|
|
4581
4604
|
const map = __getListenerMap(this, capture);
|
|
4582
4605
|
typeList.forEach(type => {
|
|
@@ -4878,7 +4901,7 @@ const LeafMatrix = {
|
|
|
4878
4901
|
const layout = this.__layout, local = this.__local, data = this.__;
|
|
4879
4902
|
if (layout.affectScaleOrRotation) {
|
|
4880
4903
|
if (layout.scaleChanged || layout.rotationChanged) {
|
|
4881
|
-
setLayout(local, data, null, layout.affectRotation);
|
|
4904
|
+
setLayout(local, data, null, null, layout.affectRotation);
|
|
4882
4905
|
layout.scaleChanged = layout.rotationChanged = false;
|
|
4883
4906
|
}
|
|
4884
4907
|
}
|
|
@@ -4886,7 +4909,7 @@ const LeafMatrix = {
|
|
|
4886
4909
|
local.f = data.y + data.offsetY;
|
|
4887
4910
|
if (data.around || data.origin) {
|
|
4888
4911
|
toPoint$3(data.around || data.origin, layout.boxBounds, tempPoint$1);
|
|
4889
|
-
translateInner(local, -tempPoint$1.x, -tempPoint$1.y, data.
|
|
4912
|
+
translateInner(local, -tempPoint$1.x, -tempPoint$1.y, !data.around);
|
|
4890
4913
|
}
|
|
4891
4914
|
}
|
|
4892
4915
|
this.__layout.matrixChanged = false;
|
|
@@ -5115,7 +5138,7 @@ const { LEAF, create } = IncrementId;
|
|
|
5115
5138
|
const { toInnerPoint, toOuterPoint, multiplyParent } = MatrixHelper;
|
|
5116
5139
|
const { toOuterOf } = BoundsHelper;
|
|
5117
5140
|
const { copy: copy$3 } = PointHelper;
|
|
5118
|
-
const { moveLocal, zoomOfLocal, rotateOfLocal, skewOfLocal, moveWorld, zoomOfWorld, rotateOfWorld, skewOfWorld, transform, transformWorld, setTransform, getLocalOrigin, getRelativeWorld, drop } = LeafHelper;
|
|
5141
|
+
const { moveLocal, zoomOfLocal, rotateOfLocal, skewOfLocal, moveWorld, zoomOfWorld, rotateOfWorld, skewOfWorld, transform, transformWorld, setTransform, getFlipTransform, getLocalOrigin, getRelativeWorld, drop } = LeafHelper;
|
|
5119
5142
|
let Leaf = class Leaf {
|
|
5120
5143
|
get tag() { return this.__tag; }
|
|
5121
5144
|
set tag(_value) { }
|
|
@@ -5141,6 +5164,8 @@ let Leaf = class Leaf {
|
|
|
5141
5164
|
get __ignoreHitWorld() { return (this.__hasMask || this.__hasEraser) && this.__.hitChildren; }
|
|
5142
5165
|
get __inLazyBounds() { const { leafer } = this; return leafer && leafer.created && leafer.lazyBounds.hit(this.__world); }
|
|
5143
5166
|
get pathInputed() { return this.__.__pathInputed; }
|
|
5167
|
+
set event(map) { let event; for (let key in map)
|
|
5168
|
+
event = map[key], event instanceof Array ? this.on(key, event[0], event[1]) : this.on(key, event); }
|
|
5144
5169
|
constructor(data) {
|
|
5145
5170
|
this.innerId = create(LEAF);
|
|
5146
5171
|
this.reset(data);
|
|
@@ -5400,6 +5425,9 @@ let Leaf = class Leaf {
|
|
|
5400
5425
|
skewOfWorld(worldOrigin, skewX, skewY, resize) {
|
|
5401
5426
|
skewOfWorld(this, worldOrigin, skewX, skewY, resize);
|
|
5402
5427
|
}
|
|
5428
|
+
flip(axis) {
|
|
5429
|
+
transform(this, getFlipTransform(this, axis));
|
|
5430
|
+
}
|
|
5403
5431
|
scaleResize(scaleX, scaleY = scaleX, _noResize) {
|
|
5404
5432
|
this.scaleX *= scaleX;
|
|
5405
5433
|
this.scaleY *= scaleY;
|
|
@@ -5757,13 +5785,14 @@ class LeafLevelList {
|
|
|
5757
5785
|
}
|
|
5758
5786
|
}
|
|
5759
5787
|
|
|
5760
|
-
const version = "1.0.
|
|
5788
|
+
const version = "1.0.1";
|
|
5761
5789
|
const inviteCode = {};
|
|
5762
5790
|
|
|
5763
5791
|
class LeaferCanvas extends LeaferCanvasBase {
|
|
5764
5792
|
get allowBackgroundColor() { return false; }
|
|
5765
5793
|
init() {
|
|
5766
|
-
|
|
5794
|
+
const { config } = this;
|
|
5795
|
+
let view = config.view || config.canvas;
|
|
5767
5796
|
if (view) {
|
|
5768
5797
|
if (typeof view === 'string') {
|
|
5769
5798
|
if (view[0] !== '#')
|
|
@@ -5793,16 +5822,18 @@ class LeaferCanvas extends LeaferCanvasBase {
|
|
|
5793
5822
|
else {
|
|
5794
5823
|
this.view = view.view || view;
|
|
5795
5824
|
}
|
|
5796
|
-
this.__createContext();
|
|
5825
|
+
this.view.getContext ? this.__createContext() : this.unrealCanvas();
|
|
5797
5826
|
const { width, height, pixelRatio } = this.config;
|
|
5798
5827
|
const size = { width: width || view.width, height: height || view.height, pixelRatio };
|
|
5799
5828
|
this.resize(size);
|
|
5800
|
-
if (this.context
|
|
5801
|
-
this.roundRect
|
|
5802
|
-
this.
|
|
5803
|
-
|
|
5829
|
+
if (this.context) {
|
|
5830
|
+
if (this.context.roundRect) {
|
|
5831
|
+
this.roundRect = function (x, y, width, height, radius) {
|
|
5832
|
+
this.context.roundRect(x, y, width, height, typeof radius === 'number' ? [radius] : radius);
|
|
5833
|
+
};
|
|
5834
|
+
}
|
|
5835
|
+
canvasPatch(this.context.__proto__);
|
|
5804
5836
|
}
|
|
5805
|
-
canvasPatch(this.context.__proto__);
|
|
5806
5837
|
}
|
|
5807
5838
|
__createView() {
|
|
5808
5839
|
this.view = Platform.origin.createCanvas(1, 1);
|
|
@@ -5820,10 +5851,12 @@ class LeaferCanvas extends LeaferCanvasBase {
|
|
|
5820
5851
|
callback();
|
|
5821
5852
|
});
|
|
5822
5853
|
}
|
|
5823
|
-
startAutoLayout(
|
|
5854
|
+
startAutoLayout(autoBounds, listener) {
|
|
5824
5855
|
this.resizeListener = listener;
|
|
5825
|
-
|
|
5826
|
-
|
|
5856
|
+
if (autoBounds) {
|
|
5857
|
+
this.checkSize = this.checkSize.bind(this);
|
|
5858
|
+
Platform.miniapp.onWindowResize(this.checkSize);
|
|
5859
|
+
}
|
|
5827
5860
|
}
|
|
5828
5861
|
checkSize() {
|
|
5829
5862
|
if (this.viewSelect) {
|
|
@@ -5832,13 +5865,8 @@ class LeaferCanvas extends LeaferCanvasBase {
|
|
|
5832
5865
|
const { width, height } = this.clientBounds;
|
|
5833
5866
|
const { pixelRatio } = this;
|
|
5834
5867
|
const size = { width, height, pixelRatio };
|
|
5835
|
-
if (!this.isSameSize(size))
|
|
5836
|
-
|
|
5837
|
-
DataHelper.copyAttrs(oldSize, this, canvasSizeAttrs);
|
|
5838
|
-
this.resize(size);
|
|
5839
|
-
if (this.width !== undefined)
|
|
5840
|
-
this.resizeListener(new ResizeEvent(size, oldSize));
|
|
5841
|
-
}
|
|
5868
|
+
if (!this.isSameSize(size))
|
|
5869
|
+
this.emitResize(size);
|
|
5842
5870
|
});
|
|
5843
5871
|
}, 500);
|
|
5844
5872
|
}
|
|
@@ -5848,6 +5876,16 @@ class LeaferCanvas extends LeaferCanvasBase {
|
|
|
5848
5876
|
this.resizeListener = null;
|
|
5849
5877
|
Platform.miniapp.offWindowResize(this.checkSize);
|
|
5850
5878
|
}
|
|
5879
|
+
unrealCanvas() {
|
|
5880
|
+
this.unreal = true;
|
|
5881
|
+
}
|
|
5882
|
+
emitResize(size) {
|
|
5883
|
+
const oldSize = {};
|
|
5884
|
+
DataHelper.copyAttrs(oldSize, this, canvasSizeAttrs);
|
|
5885
|
+
this.resize(size);
|
|
5886
|
+
if (this.width !== undefined)
|
|
5887
|
+
this.resizeListener(new ResizeEvent(size, oldSize));
|
|
5888
|
+
}
|
|
5851
5889
|
}
|
|
5852
5890
|
|
|
5853
5891
|
const { mineType, fileType } = FileHelper;
|
|
@@ -5969,7 +6007,7 @@ function useCanvas(_canvasType, app) {
|
|
|
5969
6007
|
}
|
|
5970
6008
|
Platform.name = 'miniapp';
|
|
5971
6009
|
Platform.requestRender = function (render) { Platform.canvas.view.requestAnimationFrame(render); };
|
|
5972
|
-
Platform
|
|
6010
|
+
defineKey(Platform, 'devicePixelRatio', { get() { return Math.max(1, wx.getSystemInfoSync().pixelRatio); } });
|
|
5973
6011
|
|
|
5974
6012
|
class Watcher {
|
|
5975
6013
|
get childrenChanged() { return this.hasAdd || this.hasRemove || this.hasVisible; }
|
|
@@ -6447,14 +6485,14 @@ class Renderer {
|
|
|
6447
6485
|
if (Debug.showRepaint)
|
|
6448
6486
|
this.canvas.strokeWorld(bounds, 'red');
|
|
6449
6487
|
this.target.__render(this.canvas, options);
|
|
6450
|
-
this.renderBounds = realBounds || bounds;
|
|
6488
|
+
this.renderBounds = realBounds = realBounds || bounds;
|
|
6451
6489
|
this.renderOptions = options;
|
|
6452
|
-
this.totalBounds.isEmpty() ? this.totalBounds =
|
|
6490
|
+
this.totalBounds.isEmpty() ? this.totalBounds = realBounds : this.totalBounds.add(realBounds);
|
|
6453
6491
|
if (Debug.showHitView)
|
|
6454
6492
|
this.renderHitView(options);
|
|
6455
6493
|
if (Debug.showBoundsView)
|
|
6456
6494
|
this.renderBoundsView(options);
|
|
6457
|
-
this.canvas.updateRender();
|
|
6495
|
+
this.canvas.updateRender(realBounds);
|
|
6458
6496
|
}
|
|
6459
6497
|
renderHitView(_options) { }
|
|
6460
6498
|
renderBoundsView(_options) { }
|
|
@@ -7505,7 +7543,7 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7505
7543
|
this.__controllers.push(this.renderer = Creator.renderer(this, canvas, config), this.watcher = Creator.watcher(this, config), this.layouter = Creator.layouter(this, config));
|
|
7506
7544
|
if (this.isApp)
|
|
7507
7545
|
this.__setApp();
|
|
7508
|
-
this.__checkAutoLayout(config);
|
|
7546
|
+
this.__checkAutoLayout(config, parentApp);
|
|
7509
7547
|
this.view = canvas.view;
|
|
7510
7548
|
if (parentApp) {
|
|
7511
7549
|
this.__bindApp(parentApp);
|
|
@@ -7606,9 +7644,10 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7606
7644
|
this.leafer = leafer;
|
|
7607
7645
|
this.__level = 1;
|
|
7608
7646
|
}
|
|
7609
|
-
__checkAutoLayout(config) {
|
|
7610
|
-
if (!
|
|
7611
|
-
|
|
7647
|
+
__checkAutoLayout(config, parentApp) {
|
|
7648
|
+
if (!parentApp) {
|
|
7649
|
+
if (!config.width || !config.height)
|
|
7650
|
+
this.autoLayout = new AutoBounds(config);
|
|
7612
7651
|
this.canvas.startAutoLayout(this.autoLayout, this.__onResize.bind(this));
|
|
7613
7652
|
}
|
|
7614
7653
|
}
|
|
@@ -7743,7 +7782,9 @@ let Leafer = Leafer_1 = class Leafer extends Group {
|
|
|
7743
7782
|
list.push(item);
|
|
7744
7783
|
}
|
|
7745
7784
|
}
|
|
7746
|
-
zoom(_zoomType, _padding, _fixedScale) {
|
|
7785
|
+
zoom(_zoomType, _padding, _fixedScale) {
|
|
7786
|
+
return debug$1.error('need @leafer-in/view');
|
|
7787
|
+
}
|
|
7747
7788
|
getValidMove(moveX, moveY) { return { x: moveX, y: moveY }; }
|
|
7748
7789
|
getValidScale(changeScale) { return changeScale; }
|
|
7749
7790
|
getWorldPointByClient(clientPoint, updateClient) {
|
|
@@ -8270,8 +8311,7 @@ let Canvas = class Canvas extends Rect {
|
|
|
8270
8311
|
destroy() {
|
|
8271
8312
|
if (this.canvas) {
|
|
8272
8313
|
this.canvas.destroy();
|
|
8273
|
-
this.canvas = null;
|
|
8274
|
-
this.context = null;
|
|
8314
|
+
this.canvas = this.context = null;
|
|
8275
8315
|
}
|
|
8276
8316
|
super.destroy();
|
|
8277
8317
|
}
|
|
@@ -9115,7 +9155,7 @@ function createPattern(ui, paint, pixelRatio) {
|
|
|
9115
9155
|
const { abs } = Math;
|
|
9116
9156
|
function checkImage(ui, canvas, paint, allowPaint) {
|
|
9117
9157
|
const { scaleX, scaleY } = ImageManager.patternLocked ? ui.__world : ui.__nowWorld;
|
|
9118
|
-
if (!paint.data || paint.patternId === scaleX + '-' + scaleY) {
|
|
9158
|
+
if (!paint.data || (paint.patternId === scaleX + '-' + scaleY && !Export.running)) {
|
|
9119
9159
|
return false;
|
|
9120
9160
|
}
|
|
9121
9161
|
else {
|
|
@@ -10093,7 +10133,10 @@ const ExportModule = {
|
|
|
10093
10133
|
const { x, y, width, height } = new Bounds(renderBounds).scale(scale);
|
|
10094
10134
|
let canvas = Creator.canvas({ width: Math.round(width), height: Math.round(height), pixelRatio, smooth, contextSettings });
|
|
10095
10135
|
const renderOptions = { matrix: matrix.scale(1 / scale).invert().translate(-x, -y).withScale(1 / scaleX * scale, 1 / scaleY * scale) };
|
|
10136
|
+
let sliceLeaf;
|
|
10096
10137
|
if (slice) {
|
|
10138
|
+
sliceLeaf = leaf;
|
|
10139
|
+
sliceLeaf.__worldOpacity = 0;
|
|
10097
10140
|
leaf = leafer;
|
|
10098
10141
|
renderOptions.bounds = canvas.bounds;
|
|
10099
10142
|
}
|
|
@@ -10108,6 +10151,8 @@ const ExportModule = {
|
|
|
10108
10151
|
leaf.__render(canvas, renderOptions);
|
|
10109
10152
|
}
|
|
10110
10153
|
canvas.restore();
|
|
10154
|
+
if (sliceLeaf)
|
|
10155
|
+
sliceLeaf.__updateWorldOpacity();
|
|
10111
10156
|
if (trim) {
|
|
10112
10157
|
trimBounds = getTrimBounds(canvas);
|
|
10113
10158
|
const old = canvas, { width, height } = trimBounds;
|