labellife-design-tool 2.2.4 → 2.2.6

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.
@@ -1901,11 +1901,11 @@ var Store = mobxStateTree.types.model('Store', {
1901
1901
  _toCanvas: function _toCanvas() {
1902
1902
  var _arguments = arguments;
1903
1903
  return _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee() {
1904
- var _ref4, _ref4$pixelRatio, pixelRatio, pageId, stage, page, layer, prevX, prevY, prevScaleX, prevScaleY, canvas;
1904
+ var _ref4, _ref4$pixelRatio, pixelRatio, pageId, _ref4$mimeType, mimeType, stage, page, layer, prevX, prevY, prevScaleX, prevScaleY, displayOnlyNodes, transformerNodes, rawCanvas, finalCanvas, ctx;
1905
1905
  return _regenerator().w(function (_context) {
1906
1906
  while (1) switch (_context.n) {
1907
1907
  case 0:
1908
- _ref4 = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : {}, _ref4$pixelRatio = _ref4.pixelRatio, pixelRatio = _ref4$pixelRatio === void 0 ? 1 : _ref4$pixelRatio, _ref4.ignoreBackground, pageId = _ref4.pageId, _ref4.mimeType, _ref4.includeBleed, _ref4._skipTimeout, _ref4.quickMode;
1908
+ _ref4 = _arguments.length > 0 && _arguments[0] !== undefined ? _arguments[0] : {}, _ref4$pixelRatio = _ref4.pixelRatio, pixelRatio = _ref4$pixelRatio === void 0 ? 1 : _ref4$pixelRatio, _ref4.ignoreBackground, pageId = _ref4.pageId, _ref4$mimeType = _ref4.mimeType, mimeType = _ref4$mimeType === void 0 ? 'image/png' : _ref4$mimeType, _ref4.includeBleed, _ref4._skipTimeout, _ref4.quickMode;
1909
1909
  stage = self._stageRef;
1910
1910
  if (stage) {
1911
1911
  _context.n = 1;
@@ -1940,20 +1940,56 @@ var Store = mobxStateTree.types.model('Store', {
1940
1940
  layer.y(0);
1941
1941
  layer.scaleX(1);
1942
1942
  layer.scaleY(1);
1943
+
1944
+ // Hide display-only nodes (shadow, checkerboard, overlay) — not wanted in export
1945
+ displayOnlyNodes = layer.find('.display-only');
1946
+ displayOnlyNodes.forEach(function (n) {
1947
+ return n.hide();
1948
+ });
1949
+
1950
+ // Hide selection transformer handles so they don't appear in exports
1951
+ transformerNodes = layer.find('Transformer');
1952
+ transformerNodes.forEach(function (n) {
1953
+ return n.hide();
1954
+ });
1943
1955
  layer.draw();
1944
- canvas = layer.toCanvas({
1956
+ rawCanvas = layer.toCanvas({
1945
1957
  pixelRatio: pixelRatio,
1946
1958
  x: 0,
1947
1959
  y: 0,
1948
1960
  width: self.width,
1949
1961
  height: self.height
1950
- }); // Restore
1962
+ }); // Restore display-only nodes and transformer handles
1963
+ displayOnlyNodes.forEach(function (n) {
1964
+ return n.show();
1965
+ });
1966
+ transformerNodes.forEach(function (n) {
1967
+ return n.show();
1968
+ });
1969
+
1970
+ // Restore layer transform
1951
1971
  layer.x(prevX);
1952
1972
  layer.y(prevY);
1953
1973
  layer.scaleX(prevScaleX);
1954
1974
  layer.scaleY(prevScaleY);
1955
1975
  layer.draw();
1956
- return _context.a(2, canvas);
1976
+
1977
+ // For JPEG, composite onto a white canvas to eliminate any remaining transparency
1978
+ // (avoids black areas and reduces file size vs checkerboard patterns)
1979
+ if (!(mimeType === 'image/jpeg')) {
1980
+ _context.n = 4;
1981
+ break;
1982
+ }
1983
+ finalCanvas = document.createElement('canvas');
1984
+ finalCanvas.width = rawCanvas.width;
1985
+ finalCanvas.height = rawCanvas.height;
1986
+ ctx = finalCanvas.getContext('2d');
1987
+ ctx.fillStyle = '#ffffff';
1988
+ ctx.fillRect(0, 0, finalCanvas.width, finalCanvas.height);
1989
+ ctx.drawImage(rawCanvas, 0, 0);
1990
+ return _context.a(2, finalCanvas);
1991
+ case 4:
1992
+ return _context.a(2, rawCanvas);
1957
1993
  }
1958
1994
  }, _callee);
1959
1995
  }))();
@@ -1984,7 +2020,7 @@ var Store = mobxStateTree.types.model('Store', {
1984
2020
  return _regenerator().w(function (_context3) {
1985
2021
  while (1) switch (_context3.n) {
1986
2022
  case 0:
1987
- _ref6 = _arguments3.length > 0 && _arguments3[0] !== undefined ? _arguments3[0] : {}, _ref6$mimeType = _ref6.mimeType, mimeType = _ref6$mimeType === void 0 ? 'image/png' : _ref6$mimeType, _ref6$quality = _ref6.quality, quality = _ref6$quality === void 0 ? 1 : _ref6$quality, rest = _objectWithoutProperties(_ref6, _excluded2);
2023
+ _ref6 = _arguments3.length > 0 && _arguments3[0] !== undefined ? _arguments3[0] : {}, _ref6$mimeType = _ref6.mimeType, mimeType = _ref6$mimeType === void 0 ? 'image/png' : _ref6$mimeType, _ref6$quality = _ref6.quality, quality = _ref6$quality === void 0 ? 0.92 : _ref6$quality, rest = _objectWithoutProperties(_ref6, _excluded2);
1988
2024
  _context3.n = 1;
1989
2025
  return self._toCanvas(_objectSpread2({
1990
2026
  mimeType: mimeType