ag-psd 28.1.0 → 28.2.0

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/README.md CHANGED
@@ -164,18 +164,13 @@ Browser has to support `OffscreenCanvas` and `bitmaprenderer` context.
164
164
  importScripts('bundle.js');
165
165
 
166
166
  const createCanvas = (width, height) => {
167
- const canvas = new OffscreenCanvas(width, height);
168
- canvas.width = width;
169
- canvas.height = height;
170
- return canvas;
167
+ return new OffscreenCanvas(width, height);
171
168
  };
172
169
 
173
170
  const createCanvasFromData = (data) => {
174
171
  const image = new Image();
175
172
  image.src = 'data:image/jpeg;base64,' + agPsd.byteArrayToBase64(data);
176
173
  const canvas = new OffscreenCanvas(image.width, image.height);
177
- canvas.width = image.width;
178
- canvas.height = image.height;
179
174
  canvas.getContext('2d').drawImage(image, 0, 0);
180
175
  return canvas;
181
176
  };
@@ -227,18 +222,13 @@ xhr.send();
227
222
  importScripts('bundle.js');
228
223
 
229
224
  const createCanvas = (width, height) => {
230
- const canvas = new OffscreenCanvas(width, height);
231
- canvas.width = width;
232
- canvas.height = height;
233
- return canvas;
225
+ return OffscreenCanvas(width, height);
234
226
  };
235
227
 
236
228
  const createCanvasFromData = (data) => {
237
229
  const image = new Image();
238
230
  image.src = 'data:image/jpeg;base64,' + agPsd.byteArrayToBase64(data);
239
231
  const canvas = new OffscreenCanvas(image.width, image.height);
240
- canvas.width = image.width;
241
- canvas.height = image.height;
242
232
  canvas.getContext('2d').drawImage(image, 0, 0);
243
233
  return canvas;
244
234
  };
@@ -1363,8 +1363,18 @@ function parseFilterFXItem(f, options) {
1363
1363
  } });
1364
1364
  }
1365
1365
  ;
1366
+ case 'BrgC':
1367
+ {
1368
+ return __assign(__assign({}, base), { type: 'brightness/contrast', filter: {
1369
+ brightness: f.Fltr.Brgh,
1370
+ contrast: f.Fltr.Cntr,
1371
+ useLegacy: !!f.Fltr.useLegacy,
1372
+ } });
1373
+ }
1374
+ ;
1366
1375
  default:
1367
1376
  if (options.throwForMissingFeatures) {
1377
+ console.log('FILTER', require('util').inspect(f, false, 99, true));
1368
1378
  throw new Error("Unknown filter classId: ".concat(f.Fltr._classID));
1369
1379
  }
1370
1380
  return undefined;
@@ -1384,9 +1394,10 @@ function parseFilterFXItem(f, options) {
1384
1394
  case 1181639749: return __assign(__assign({}, base), { type: 'find edges' });
1385
1395
  case 1399616122: return __assign(__assign({}, base), { type: 'solarize' });
1386
1396
  case 1314149187: return __assign(__assign({}, base), { type: 'ntsc colors' });
1397
+ case 1231976050: return __assign(__assign({}, base), { type: 'invert' });
1387
1398
  default:
1388
1399
  if (options.throwForMissingFeatures) {
1389
- // console.log('FILTER', require('util').inspect(f, false, 99, true));
1400
+ console.log('FILTER', require('util').inspect(f, false, 99, true));
1390
1401
  throw new Error("Unknown filterID: ".concat(f.filterID));
1391
1402
  }
1392
1403
  }
@@ -1722,6 +1733,7 @@ function serializeFilterFXItem(f) {
1722
1733
  IntC: descriptor_1.IntC.encode(f.filter.newFieldsBy),
1723
1734
  }, filterID: 1148089458 });
1724
1735
  case 'ntsc colors': return __assign(__assign({}, base), { filterID: 1314149187 });
1736
+ case 'invert': return __assign(__assign({}, base), { filterID: 1231976050 });
1725
1737
  case 'custom': return __assign(__assign({}, base), { Fltr: {
1726
1738
  _name: 'Custom',
1727
1739
  _classID: 'Cstm',
@@ -1859,6 +1871,13 @@ function serializeFilterFXItem(f) {
1859
1871
  Mpng: a.values,
1860
1872
  }; }),
1861
1873
  }, filterID: 1131574899 });
1874
+ case 'brightness/contrast': return __assign(__assign({}, base), { Fltr: {
1875
+ _name: 'Brightness/Contrast',
1876
+ _classID: 'BrgC',
1877
+ Brgh: f.filter.brightness,
1878
+ Cntr: f.filter.contrast,
1879
+ useLegacy: !!f.filter.useLegacy,
1880
+ }, filterID: 1114793795 });
1862
1881
  // case 'hsb/hsl': return {
1863
1882
  // TODO: ...
1864
1883
  // };
@@ -2883,7 +2902,8 @@ addHandler('thrs', adjustmentType('threshold'), function (reader, target, left)
2883
2902
  });
2884
2903
  var grdmColorModels = ['', '', '', 'rgb', 'hsb', '', 'lab'];
2885
2904
  addHandler('grdm', adjustmentType('gradient map'), function (reader, target, left) {
2886
- if ((0, psdReader_1.readUint16)(reader) !== 1)
2905
+ var version = (0, psdReader_1.readUint16)(reader);
2906
+ if (version !== 1 && version !== 3)
2887
2907
  throw new Error('Invalid grdm version');
2888
2908
  var info = {
2889
2909
  type: 'gradient map',
@@ -2891,6 +2911,12 @@ addHandler('grdm', adjustmentType('gradient map'), function (reader, target, lef
2891
2911
  };
2892
2912
  info.reverse = !!(0, psdReader_1.readUint8)(reader);
2893
2913
  info.dither = !!(0, psdReader_1.readUint8)(reader);
2914
+ var hasMethod = !!(0, psdReader_1.readUint8)(reader);
2915
+ reader.offset--;
2916
+ if (hasMethod) {
2917
+ var method = (0, psdReader_1.readSignature)(reader);
2918
+ info.method = descriptor_1.gradientInterpolationMethodType.decode(method);
2919
+ }
2894
2920
  info.name = (0, psdReader_1.readUnicodeString)(reader);
2895
2921
  info.colorStops = [];
2896
2922
  info.opacityStops = [];
@@ -2950,9 +2976,12 @@ addHandler('grdm', adjustmentType('gradient map'), function (reader, target, lef
2950
2976
  }, function (writer, target) {
2951
2977
  var _a, _b, _c;
2952
2978
  var info = target.adjustment;
2953
- (0, psdWriter_1.writeUint16)(writer, 1); // version
2979
+ (0, psdWriter_1.writeUint16)(writer, info.method !== undefined ? 3 : 1); // version
2954
2980
  (0, psdWriter_1.writeUint8)(writer, info.reverse ? 1 : 0);
2955
2981
  (0, psdWriter_1.writeUint8)(writer, info.dither ? 1 : 0);
2982
+ if (info.method !== undefined) {
2983
+ (0, psdWriter_1.writeSignature)(writer, descriptor_1.gradientInterpolationMethodType.encode(info.method));
2984
+ }
2956
2985
  (0, psdWriter_1.writeUnicodeStringWithPadding)(writer, info.name || '');
2957
2986
  (0, psdWriter_1.writeUint16)(writer, info.colorStops && info.colorStops.length || 0);
2958
2987
  var interpolation = Math.round(((_a = info.smoothness) !== null && _a !== void 0 ? _a : 1) * 4096);