ag-psd 29.1.0 → 30.1.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/CHANGELOG.md CHANGED
@@ -1,5 +1,8 @@
1
1
  # Changelog
2
2
 
3
+ ## v30.0.0
4
+ - Added `useRawData` property to read options, if it's set to `true` the layer and mask image data will not be decompressed by `readPsd` function. Instead it can be decompressed for individual layers using `decodeLayerPixels` function.
5
+
3
6
  ## v29.1.0
4
7
  - Fixes for importing ABR files
5
8
 
package/dist/bundle.js CHANGED
@@ -7054,7 +7054,7 @@ exports.decodeEngineData2 = decodeEngineData2;
7054
7054
  },{}],8:[function(require,module,exports){
7055
7055
  "use strict";
7056
7056
  Object.defineProperty(exports, "__esModule", { value: true });
7057
- exports.initializeCanvas = exports.createImageData = exports.createCanvas = exports.createCanvasFromData = exports.writeDataZipWithoutPrediction = exports.writeDataRLE = exports.writeDataRaw = exports.decodeBitmap = exports.imageDataToCanvas = exports.resetImageData = exports.hasAlpha = exports.clamp = exports.offsetForChannel = exports.Compression = exports.ChannelID = exports.MaskParams = exports.LayerMaskFlags = exports.ColorSpace = exports.createEnum = exports.revMap = exports.largeAdditionalInfoKeys = exports.layerColors = exports.toBlendMode = exports.fromBlendMode = exports.RAW_IMAGE_DATA = exports.MOCK_HANDLERS = void 0;
7057
+ exports.initializeCanvas = exports.createImageData = exports.createCanvas = exports.createCanvasFromData = exports.writeDataZipWithoutPrediction = exports.writeDataRLE = exports.writeDataRaw = exports.decodeBitmap = exports.imageDataToCanvas = exports.resetImageData = exports.hasAlpha = exports.clamp = exports.offsetForChannel = exports.MaskParams = exports.LayerMaskFlags = exports.ColorSpace = exports.createEnum = exports.revMap = exports.largeAdditionalInfoKeys = exports.layerColors = exports.toBlendMode = exports.fromBlendMode = exports.RAW_IMAGE_DATA = exports.MOCK_HANDLERS = void 0;
7058
7058
  var pako_1 = require("pako");
7059
7059
  var jpeg_1 = require("./jpeg");
7060
7060
  exports.MOCK_HANDLERS = false;
@@ -7145,23 +7145,6 @@ var MaskParams;
7145
7145
  MaskParams[MaskParams["VectorMaskDensity"] = 4] = "VectorMaskDensity";
7146
7146
  MaskParams[MaskParams["VectorMaskFeather"] = 8] = "VectorMaskFeather";
7147
7147
  })(MaskParams = exports.MaskParams || (exports.MaskParams = {}));
7148
- var ChannelID;
7149
- (function (ChannelID) {
7150
- ChannelID[ChannelID["Color0"] = 0] = "Color0";
7151
- ChannelID[ChannelID["Color1"] = 1] = "Color1";
7152
- ChannelID[ChannelID["Color2"] = 2] = "Color2";
7153
- ChannelID[ChannelID["Color3"] = 3] = "Color3";
7154
- ChannelID[ChannelID["Transparency"] = -1] = "Transparency";
7155
- ChannelID[ChannelID["UserMask"] = -2] = "UserMask";
7156
- ChannelID[ChannelID["RealUserMask"] = -3] = "RealUserMask";
7157
- })(ChannelID = exports.ChannelID || (exports.ChannelID = {}));
7158
- var Compression;
7159
- (function (Compression) {
7160
- Compression[Compression["RawData"] = 0] = "RawData";
7161
- Compression[Compression["RleCompressed"] = 1] = "RleCompressed";
7162
- Compression[Compression["ZipWithoutPrediction"] = 2] = "ZipWithoutPrediction";
7163
- Compression[Compression["ZipWithPrediction"] = 3] = "ZipWithPrediction";
7164
- })(Compression = exports.Compression || (exports.Compression = {}));
7165
7148
  function offsetForChannel(channelId, cmyk) {
7166
7149
  switch (channelId) {
7167
7150
  case 0 /* ChannelID.Color0 */: return 0;
@@ -8517,7 +8500,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
8517
8500
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
8518
8501
  };
8519
8502
  Object.defineProperty(exports, "__esModule", { value: true });
8520
- exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0;
8503
+ exports.decodeLayerPixels = exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0;
8521
8504
  var psdWriter_1 = require("./psdWriter");
8522
8505
  var psdReader_1 = require("./psdReader");
8523
8506
  var base64_js_1 = require("base64-js");
@@ -8553,6 +8536,10 @@ function writePsdBuffer(psd, options) {
8553
8536
  return Buffer.from(writePsdUint8Array(psd, options));
8554
8537
  }
8555
8538
  exports.writePsdBuffer = writePsdBuffer;
8539
+ function decodeLayerPixels(layer, useImageData) {
8540
+ (0, psdReader_1.decodeLayerImageData)(layer, useImageData);
8541
+ }
8542
+ exports.decodeLayerPixels = decodeLayerPixels;
8556
8543
 
8557
8544
  }).call(this)}).call(this,require("buffer").Buffer)
8558
8545
  },{"./abr":1,"./csh":3,"./helpers":8,"./psd":12,"./psdReader":13,"./psdWriter":14,"base64-js":19,"buffer":20}],11:[function(require,module,exports){
@@ -9581,7 +9568,7 @@ exports.decodeJpeg = decodeJpeg;
9581
9568
  },{}],12:[function(require,module,exports){
9582
9569
  "use strict";
9583
9570
  Object.defineProperty(exports, "__esModule", { value: true });
9584
- exports.LayerCompCapturedInfo = exports.SectionDividerType = exports.ColorMode = void 0;
9571
+ exports.Compression = exports.ChannelID = exports.LayerCompCapturedInfo = exports.SectionDividerType = exports.ColorMode = void 0;
9585
9572
  var ColorMode;
9586
9573
  (function (ColorMode) {
9587
9574
  ColorMode[ColorMode["Bitmap"] = 0] = "Bitmap";
@@ -9607,6 +9594,23 @@ var LayerCompCapturedInfo;
9607
9594
  LayerCompCapturedInfo[LayerCompCapturedInfo["Position"] = 2] = "Position";
9608
9595
  LayerCompCapturedInfo[LayerCompCapturedInfo["Appearance"] = 4] = "Appearance";
9609
9596
  })(LayerCompCapturedInfo = exports.LayerCompCapturedInfo || (exports.LayerCompCapturedInfo = {}));
9597
+ var ChannelID;
9598
+ (function (ChannelID) {
9599
+ ChannelID[ChannelID["Color0"] = 0] = "Color0";
9600
+ ChannelID[ChannelID["Color1"] = 1] = "Color1";
9601
+ ChannelID[ChannelID["Color2"] = 2] = "Color2";
9602
+ ChannelID[ChannelID["Color3"] = 3] = "Color3";
9603
+ ChannelID[ChannelID["Transparency"] = -1] = "Transparency";
9604
+ ChannelID[ChannelID["UserMask"] = -2] = "UserMask";
9605
+ ChannelID[ChannelID["RealUserMask"] = -3] = "RealUserMask";
9606
+ })(ChannelID = exports.ChannelID || (exports.ChannelID = {}));
9607
+ var Compression;
9608
+ (function (Compression) {
9609
+ Compression[Compression["RawData"] = 0] = "RawData";
9610
+ Compression[Compression["RleCompressed"] = 1] = "RleCompressed";
9611
+ Compression[Compression["ZipWithoutPrediction"] = 2] = "ZipWithoutPrediction";
9612
+ Compression[Compression["ZipWithPrediction"] = 3] = "ZipWithPrediction";
9613
+ })(Compression = exports.Compression || (exports.Compression = {}));
9610
9614
 
9611
9615
  },{}],13:[function(require,module,exports){
9612
9616
  "use strict";
@@ -9622,7 +9626,7 @@ var __rest = (this && this.__rest) || function (s, e) {
9622
9626
  return t;
9623
9627
  };
9624
9628
  Object.defineProperty(exports, "__esModule", { value: true });
9625
- exports.readPattern = exports.readColor = exports.readSection = exports.readDataRLE = exports.readDataZip = exports.createImageDataBitDepth = exports.readAdditionalLayerInfo = exports.readGlobalLayerMaskInfo = exports.readData = exports.readLayerInfo = exports.readPsd = exports.checkSignature = exports.skipBytes = exports.readAsciiString = exports.readUnicodeStringWithLengthLE = exports.readUnicodeStringWithLength = exports.readUnicodeString = exports.readPascalString = exports.validSignatureAt = exports.readSignature = exports.readBytes = exports.readFixedPointPath32 = exports.readFixedPoint32 = exports.readFloat64 = exports.readFloat32 = exports.readUint32 = exports.readInt32LE = exports.readInt32 = exports.readUint16LE = exports.readUint16 = exports.readInt16 = exports.peekUint8 = exports.readUint8 = exports.warnOrThrow = exports.createReader = exports.supportedColorModes = void 0;
9629
+ exports.readPattern = exports.readColor = exports.readSection = exports.readDataRLE = exports.readDataZip = exports.createImageDataBitDepth = exports.readAdditionalLayerInfo = exports.readGlobalLayerMaskInfo = exports.decodeLayerImageData = exports.readLayerInfo = exports.readPsd = exports.checkSignature = exports.skipBytes = exports.readAsciiString = exports.readUnicodeStringWithLengthLE = exports.readUnicodeStringWithLength = exports.readUnicodeString = exports.readPascalString = exports.validSignatureAt = exports.readSignature = exports.readBytes = exports.readFixedPointPath32 = exports.readFixedPoint32 = exports.readFloat64 = exports.readFloat32 = exports.readUint32 = exports.readInt32LE = exports.readInt32 = exports.readUint16LE = exports.readUint16 = exports.readInt16 = exports.peekUint8 = exports.readUint8 = exports.warnOrThrow = exports.createReader = exports.supportedColorModes = void 0;
9626
9630
  var pako_1 = require("pako");
9627
9631
  var helpers_1 = require("./helpers");
9628
9632
  var additionalInfo_1 = require("./additionalInfo");
@@ -9951,10 +9955,8 @@ function readLayerInfo(reader, psd, imageResources) {
9951
9955
  layers.push(layer);
9952
9956
  layerChannels.push(channels);
9953
9957
  }
9954
- if (!reader.skipLayerImageData) {
9955
- for (var i = 0; i < layerCount; i++) {
9956
- readLayerChannelImageData(reader, psd, layers[i], layerChannels[i]);
9957
- }
9958
+ for (var i = 0; i < layerCount; i++) {
9959
+ readLayerChannelImageData(reader, psd, layers[i], layerChannels[i]);
9958
9960
  }
9959
9961
  if (!psd.children)
9960
9962
  psd.children = [];
@@ -10093,73 +10095,104 @@ function readLayerBlendingRanges(reader) {
10093
10095
  });
10094
10096
  }
10095
10097
  function readLayerChannelImageData(reader, psd, layer, channels) {
10096
- var _a, _b, _c, _d;
10098
+ if (reader.skipLayerImageData)
10099
+ return;
10100
+ var _a = psd.colorMode, colorMode = _a === void 0 ? 3 /* ColorMode.RGB */ : _a, _b = psd.bitsPerChannel, bitsPerChannel = _b === void 0 ? 8 : _b;
10101
+ layer.rawData = { colorMode: colorMode, bitsPerChannel: bitsPerChannel, channels: [], large: reader.large };
10102
+ for (var _i = 0, channels_1 = channels; _i < channels_1.length; _i++) {
10103
+ var channel = channels_1[_i];
10104
+ var start = reader.offset;
10105
+ var compression = 0 /* Compression.RawData */;
10106
+ var data = undefined;
10107
+ if (channel.length === 1)
10108
+ throw new Error('Invalid channel length');
10109
+ if (channel.length) {
10110
+ compression = readUint16(reader);
10111
+ // try to fix broken files where there's 1 byte shift of channel
10112
+ if (compression > 3) {
10113
+ reader.offset -= 1;
10114
+ compression = readUint16(reader);
10115
+ }
10116
+ // try to fix broken files where there's 1 byte shift of channel
10117
+ if (compression > 3) {
10118
+ reader.offset -= 3;
10119
+ compression = readUint16(reader);
10120
+ }
10121
+ if (compression > 3)
10122
+ throw new Error("Invalid compression: ".concat(compression));
10123
+ if (channel.length > 2) {
10124
+ data = readBytes(reader, channel.length - 2);
10125
+ }
10126
+ }
10127
+ reader.offset = start + channel.length;
10128
+ layer.rawData.channels.push({ id: channel.id, compression: compression, data: data });
10129
+ }
10130
+ if (!reader.useRawData) {
10131
+ decodeLayerImageData(layer, !!reader.useImageData, !!reader.throwForMissingFeatures);
10132
+ }
10133
+ }
10134
+ function resetAlpha(_a, cmyk) {
10135
+ var data = _a.data;
10136
+ var alpha = (data instanceof Float32Array) ? 1.0 : ((data instanceof Uint16Array) ? 0xffff : 0xff);
10137
+ var offset = (cmyk ? 4 : 3) | 0;
10138
+ var length = data.length | 0;
10139
+ var step = (cmyk ? 5 : 4) | 0;
10140
+ for (var p = offset; p < length; p = (p + step) | 0) {
10141
+ data[p] = alpha;
10142
+ }
10143
+ }
10144
+ function decodeLayerImageData(layer, useImageData, throwForMissingFeatures) {
10145
+ if (!layer.rawData)
10146
+ return;
10147
+ var _a = layer.rawData, colorMode = _a.colorMode, bitsPerChannel = _a.bitsPerChannel, channels = _a.channels, large = _a.large;
10097
10148
  var layerWidth = (layer.right || 0) - (layer.left || 0);
10098
10149
  var layerHeight = (layer.bottom || 0) - (layer.top || 0);
10099
- var cmyk = psd.colorMode === 4 /* ColorMode.CMYK */;
10150
+ var cmyk = colorMode === 4 /* ColorMode.CMYK */;
10100
10151
  var imageData;
10152
+ var initializedAlpha = false;
10101
10153
  if (layerWidth && layerHeight) {
10102
10154
  if (cmyk) {
10103
- if (psd.bitsPerChannel !== 8)
10155
+ if (bitsPerChannel !== 8)
10104
10156
  throw new Error('bitsPerChannel Not supproted');
10105
10157
  imageData = { width: layerWidth, height: layerHeight, data: new Uint8ClampedArray(layerWidth * layerHeight * 5) };
10106
- for (var p = 4; p < imageData.data.byteLength; p += 5)
10107
- imageData.data[p] = 255;
10108
10158
  }
10109
10159
  else {
10110
- imageData = createImageDataBitDepth(layerWidth, layerHeight, (_a = psd.bitsPerChannel) !== null && _a !== void 0 ? _a : 8);
10111
- (0, helpers_1.resetImageData)(imageData);
10160
+ imageData = createImageDataBitDepth(layerWidth, layerHeight, bitsPerChannel);
10112
10161
  }
10113
10162
  }
10114
- if (helpers_1.RAW_IMAGE_DATA) {
10163
+ if (helpers_1.RAW_IMAGE_DATA) { // TODO: use layer.rawData instead
10115
10164
  layer.imageDataRaw = [];
10116
10165
  layer.imageDataRawCompression = [];
10117
10166
  }
10118
- for (var _i = 0, channels_1 = channels; _i < channels_1.length; _i++) {
10119
- var channel = channels_1[_i];
10120
- if (channel.length === 0)
10167
+ for (var _i = 0, channels_2 = channels; _i < channels_2.length; _i++) {
10168
+ var _b = channels_2[_i], id = _b.id, compression = _b.compression, data = _b.data;
10169
+ if (!data)
10121
10170
  continue;
10122
- if (channel.length < 2)
10123
- throw new Error('Invalid channel length');
10124
- var start = reader.offset;
10125
- var compression = readUint16(reader);
10126
- // try to fix broken files where there's 1 byte shift of channel
10127
- if (compression > 3) {
10128
- reader.offset -= 1;
10129
- compression = readUint16(reader);
10130
- }
10131
- // try to fix broken files where there's 1 byte shift of channel
10132
- if (compression > 3) {
10133
- reader.offset -= 3;
10134
- compression = readUint16(reader);
10135
- }
10136
- if (compression > 3)
10137
- throw new Error("Invalid compression: ".concat(compression));
10138
- if (channel.id === -2 /* ChannelID.UserMask */ || channel.id === -3 /* ChannelID.RealUserMask */) {
10139
- var mask = channel.id === -2 /* ChannelID.UserMask */ ? layer.mask : layer.realMask;
10171
+ var dataReader = createReader(data.buffer, data.byteOffset, data.byteLength);
10172
+ if (id === -2 /* ChannelID.UserMask */ || id === -3 /* ChannelID.RealUserMask */) {
10173
+ var mask = id === -2 /* ChannelID.UserMask */ ? layer.mask : layer.realMask;
10140
10174
  if (!mask)
10141
- throw new Error("Missing layer ".concat(channel.id === -2 /* ChannelID.UserMask */ ? 'mask' : 'real mask', " data"));
10175
+ throw new Error("Missing layer ".concat(id === -2 /* ChannelID.UserMask */ ? 'mask' : 'real mask', " data"));
10142
10176
  var maskWidth = (mask.right || 0) - (mask.left || 0);
10143
10177
  var maskHeight = (mask.bottom || 0) - (mask.top || 0);
10144
10178
  if (maskWidth < 0 || maskHeight < 0 || maskWidth > 30000 || maskHeight > 30000)
10145
10179
  throw new Error('Invalid mask size');
10146
10180
  if (maskWidth && maskHeight) {
10147
- var maskData = createImageDataBitDepth(maskWidth, maskHeight, (_b = psd.bitsPerChannel) !== null && _b !== void 0 ? _b : 8);
10148
- (0, helpers_1.resetImageData)(maskData);
10149
- var start_1 = reader.offset;
10150
- readData(reader, channel.length, maskData, compression, maskWidth, maskHeight, (_c = psd.bitsPerChannel) !== null && _c !== void 0 ? _c : 8, 0, reader.large, 4);
10151
- if (helpers_1.RAW_IMAGE_DATA) {
10152
- if (channel.id === -2 /* ChannelID.UserMask */) {
10181
+ var maskData = createImageDataBitDepth(maskWidth, maskHeight, bitsPerChannel);
10182
+ readData(dataReader, data.byteLength, maskData, compression, maskWidth, maskHeight, bitsPerChannel, 0, large, 4);
10183
+ if (helpers_1.RAW_IMAGE_DATA) { // TODO: use layer.rawData instead
10184
+ if (id === -2 /* ChannelID.UserMask */) {
10153
10185
  layer.maskDataRawCompression = compression;
10154
- layer.maskDataRaw = new Uint8Array(reader.view.buffer, reader.view.byteOffset + start_1, reader.offset - start_1);
10186
+ layer.maskDataRaw = data;
10155
10187
  }
10156
10188
  else {
10157
10189
  layer.realMaskDataRawCompression = compression;
10158
- layer.realMaskDataRaw = new Uint8Array(reader.view.buffer, reader.view.byteOffset + start_1, reader.offset - start_1);
10190
+ layer.realMaskDataRaw = data;
10159
10191
  }
10160
10192
  }
10161
10193
  setupGrayscale(maskData);
10162
- if (reader.useImageData) {
10194
+ resetAlpha(maskData, false);
10195
+ if (useImageData) {
10163
10196
  mask.imageData = maskData;
10164
10197
  }
10165
10198
  else {
@@ -10168,57 +10201,71 @@ function readLayerChannelImageData(reader, psd, layer, channels) {
10168
10201
  }
10169
10202
  }
10170
10203
  else {
10171
- var offset = (0, helpers_1.offsetForChannel)(channel.id, cmyk);
10204
+ var offset = (0, helpers_1.offsetForChannel)(id, cmyk);
10172
10205
  var targetData = imageData;
10173
10206
  if (offset < 0) {
10174
10207
  targetData = undefined;
10175
- if (reader.throwForMissingFeatures) {
10176
- throw new Error("Channel not supported: ".concat(channel.id));
10208
+ if (throwForMissingFeatures) {
10209
+ throw new Error("Channel not supported: ".concat(id));
10177
10210
  }
10178
10211
  }
10179
- readData(reader, channel.length, targetData, compression, layerWidth, layerHeight, (_d = psd.bitsPerChannel) !== null && _d !== void 0 ? _d : 8, offset, reader.large, cmyk ? 5 : 4);
10180
- if (helpers_1.RAW_IMAGE_DATA) {
10181
- layer.imageDataRawCompression[channel.id] = compression;
10182
- layer.imageDataRaw[channel.id] = new Uint8Array(reader.view.buffer, reader.view.byteOffset + start + 2, channel.length - 2);
10212
+ readData(dataReader, data.byteLength, targetData, compression, layerWidth, layerHeight, bitsPerChannel, offset, large, cmyk ? 5 : 4);
10213
+ if (helpers_1.RAW_IMAGE_DATA) { // TODO: use layer.rawData instead
10214
+ layer.imageDataRawCompression[id] = compression;
10215
+ layer.imageDataRaw[id] = data;
10183
10216
  }
10184
- reader.offset = start + channel.length;
10185
- if (targetData && psd.colorMode === 1 /* ColorMode.Grayscale */) {
10217
+ if (targetData && colorMode === 1 /* ColorMode.Grayscale */) {
10186
10218
  setupGrayscale(targetData);
10187
10219
  }
10188
10220
  }
10221
+ if (id === -1 /* ChannelID.Transparency */) {
10222
+ initializedAlpha = true;
10223
+ }
10189
10224
  }
10190
10225
  if (imageData) {
10226
+ if (!initializedAlpha)
10227
+ resetAlpha(imageData, cmyk);
10191
10228
  if (cmyk) {
10192
10229
  var cmykData = imageData;
10193
10230
  imageData = (0, helpers_1.createImageData)(cmykData.width, cmykData.height);
10194
10231
  cmykToRgb(cmykData, imageData, false);
10195
10232
  }
10196
- if (reader.useImageData) {
10233
+ if (useImageData) {
10197
10234
  layer.imageData = imageData;
10198
10235
  }
10199
10236
  else {
10200
10237
  layer.canvas = (0, helpers_1.imageDataToCanvas)(imageData);
10201
10238
  }
10202
10239
  }
10240
+ delete layer.rawData;
10203
10241
  }
10204
- function readData(reader, length, data, compression, width, height, bitDepth, offset, large, step) {
10242
+ exports.decodeLayerImageData = decodeLayerImageData;
10243
+ function readData(reader, length, pixels, compression, width, height, bitDepth, offset, large, step) {
10244
+ if (!length)
10245
+ return;
10205
10246
  if (compression === 0 /* Compression.RawData */) {
10206
- readDataRaw(reader, data, width, height, bitDepth, step, offset);
10247
+ if (length !== (width * height * Math.floor(bitDepth / 8))) {
10248
+ reader.log("Invalid length (".concat(length, ", ").concat(width * height * Math.floor(bitDepth / 8), ")"));
10249
+ }
10250
+ var data = readBytes(reader, length);
10251
+ readDataRaw(data, pixels, bitDepth, step, offset);
10207
10252
  }
10208
10253
  else if (compression === 1 /* Compression.RleCompressed */) {
10209
- readDataRLE(reader, data, width, height, bitDepth, step, [offset], large);
10254
+ // const reader = createReader(data.buffer, data.byteOffset, data.byteLength);
10255
+ readDataRLE(reader, pixels, width, height, bitDepth, step, [offset], large);
10210
10256
  }
10211
10257
  else if (compression === 2 /* Compression.ZipWithoutPrediction */) {
10212
- readDataZip(reader, length, data, width, height, bitDepth, step, offset, false);
10258
+ var data = readBytes(reader, length);
10259
+ readDataZip(data, pixels, width, height, bitDepth, step, offset, false);
10213
10260
  }
10214
10261
  else if (compression === 3 /* Compression.ZipWithPrediction */) {
10215
- readDataZip(reader, length, data, width, height, bitDepth, step, offset, true);
10262
+ var data = readBytes(reader, length);
10263
+ readDataZip(data, pixels, width, height, bitDepth, step, offset, true);
10216
10264
  }
10217
10265
  else {
10218
10266
  throw new Error("Invalid Compression type: ".concat(compression));
10219
10267
  }
10220
10268
  }
10221
- exports.readData = readData;
10222
10269
  function readGlobalLayerMaskInfo(reader) {
10223
10270
  return readSection(reader, 1, function (left) {
10224
10271
  if (!left())
@@ -10348,7 +10395,8 @@ function readImageData(reader, psd) {
10348
10395
  }
10349
10396
  if (compression === 0 /* Compression.RawData */) {
10350
10397
  for (var i = 0; i < channels.length; i++) {
10351
- readDataRaw(reader, imageData, psd.width, psd.height, bitsPerChannel, 4, channels[i]);
10398
+ var data = readBytes(reader, psd.width * psd.height * Math.floor(bitsPerChannel / 8));
10399
+ readDataRaw(data, imageData, bitsPerChannel, 4, channels[i]);
10352
10400
  }
10353
10401
  }
10354
10402
  else if (compression === 1 /* Compression.RleCompressed */) {
@@ -10523,8 +10571,7 @@ function copyChannelToPixelData(pixelData, channel, offset, step) {
10523
10571
  data[p] = channel[i];
10524
10572
  }
10525
10573
  }
10526
- function readDataRaw(reader, pixelData, width, height, bitDepth, step, offset) {
10527
- var buffer = readBytes(reader, width * height * Math.floor(bitDepth / 8));
10574
+ function readDataRaw(buffer, pixelData, bitDepth, step, offset) {
10528
10575
  if (bitDepth == 32) {
10529
10576
  for (var i = 0; i < buffer.byteLength; i += 4) {
10530
10577
  var a = buffer[i + 0];
@@ -10550,8 +10597,7 @@ function decodePredicted(data, width, height, mod) {
10550
10597
  }
10551
10598
  }
10552
10599
  }
10553
- function readDataZip(reader, length, pixelData, width, height, bitDepth, step, offset, prediction) {
10554
- var compressed = readBytes(reader, length);
10600
+ function readDataZip(compressed, pixelData, width, height, bitDepth, step, offset, prediction) {
10555
10601
  var decompressed = (0, pako_1.inflate)(compressed);
10556
10602
  if (pixelData && offset < step) {
10557
10603
  var array = bytesToArray(decompressed, bitDepth);
package/dist/helpers.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Layer, BlendMode, LayerColor, PixelData, PixelArray } from './psd';
1
+ import { Layer, BlendMode, LayerColor, PixelData, PixelArray, ChannelID, Compression } from './psd';
2
2
  export declare const MOCK_HANDLERS = false;
3
3
  export declare const RAW_IMAGE_DATA = false;
4
4
  export declare const fromBlendMode: {
@@ -37,21 +37,6 @@ export declare const enum MaskParams {
37
37
  VectorMaskDensity = 4,
38
38
  VectorMaskFeather = 8
39
39
  }
40
- export declare const enum ChannelID {
41
- Color0 = 0,
42
- Color1 = 1,
43
- Color2 = 2,
44
- Color3 = 3,
45
- Transparency = -1,
46
- UserMask = -2,
47
- RealUserMask = -3
48
- }
49
- export declare const enum Compression {
50
- RawData = 0,
51
- RleCompressed = 1,
52
- ZipWithoutPrediction = 2,
53
- ZipWithPrediction = 3
54
- }
55
40
  export interface ChannelData {
56
41
  channelId: ChannelID;
57
42
  compression: Compression;
package/dist/helpers.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.initializeCanvas = exports.createImageData = exports.createCanvas = exports.createCanvasFromData = exports.writeDataZipWithoutPrediction = exports.writeDataRLE = exports.writeDataRaw = exports.decodeBitmap = exports.imageDataToCanvas = exports.resetImageData = exports.hasAlpha = exports.clamp = exports.offsetForChannel = exports.Compression = exports.ChannelID = exports.MaskParams = exports.LayerMaskFlags = exports.ColorSpace = exports.createEnum = exports.revMap = exports.largeAdditionalInfoKeys = exports.layerColors = exports.toBlendMode = exports.fromBlendMode = exports.RAW_IMAGE_DATA = exports.MOCK_HANDLERS = void 0;
3
+ exports.initializeCanvas = exports.createImageData = exports.createCanvas = exports.createCanvasFromData = exports.writeDataZipWithoutPrediction = exports.writeDataRLE = exports.writeDataRaw = exports.decodeBitmap = exports.imageDataToCanvas = exports.resetImageData = exports.hasAlpha = exports.clamp = exports.offsetForChannel = exports.MaskParams = exports.LayerMaskFlags = exports.ColorSpace = exports.createEnum = exports.revMap = exports.largeAdditionalInfoKeys = exports.layerColors = exports.toBlendMode = exports.fromBlendMode = exports.RAW_IMAGE_DATA = exports.MOCK_HANDLERS = void 0;
4
4
  var pako_1 = require("pako");
5
5
  var jpeg_1 = require("./jpeg");
6
6
  exports.MOCK_HANDLERS = false;
@@ -91,23 +91,6 @@ var MaskParams;
91
91
  MaskParams[MaskParams["VectorMaskDensity"] = 4] = "VectorMaskDensity";
92
92
  MaskParams[MaskParams["VectorMaskFeather"] = 8] = "VectorMaskFeather";
93
93
  })(MaskParams = exports.MaskParams || (exports.MaskParams = {}));
94
- var ChannelID;
95
- (function (ChannelID) {
96
- ChannelID[ChannelID["Color0"] = 0] = "Color0";
97
- ChannelID[ChannelID["Color1"] = 1] = "Color1";
98
- ChannelID[ChannelID["Color2"] = 2] = "Color2";
99
- ChannelID[ChannelID["Color3"] = 3] = "Color3";
100
- ChannelID[ChannelID["Transparency"] = -1] = "Transparency";
101
- ChannelID[ChannelID["UserMask"] = -2] = "UserMask";
102
- ChannelID[ChannelID["RealUserMask"] = -3] = "RealUserMask";
103
- })(ChannelID = exports.ChannelID || (exports.ChannelID = {}));
104
- var Compression;
105
- (function (Compression) {
106
- Compression[Compression["RawData"] = 0] = "RawData";
107
- Compression[Compression["RleCompressed"] = 1] = "RleCompressed";
108
- Compression[Compression["ZipWithoutPrediction"] = 2] = "ZipWithoutPrediction";
109
- Compression[Compression["ZipWithPrediction"] = 3] = "ZipWithPrediction";
110
- })(Compression = exports.Compression || (exports.Compression = {}));
111
94
  function offsetForChannel(channelId, cmyk) {
112
95
  switch (channelId) {
113
96
  case 0 /* ChannelID.Color0 */: return 0;
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sourceRoot":"../src/","sources":["helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"helpers.js","sourceRoot":"../src/","sources":["helpers.ts"],"names":[],"mappings":";;;AAAA,6BAA8C;AAE9C,+BAAoC;AAEvB,QAAA,aAAa,GAAG,KAAK,CAAC;AACtB,QAAA,cAAc,GAAG,KAAK,CAAC;AAEvB,QAAA,aAAa,GAA8B,EAAE,CAAC;AAC9C,QAAA,WAAW,GAAiC;IACxD,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,eAAe;IACvB,MAAM,EAAE,SAAS;IACjB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,aAAa;IACrB,MAAM,EAAE,cAAc;IACtB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,WAAW;IACnB,MAAM,EAAE,UAAU;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,KAAK;IACb,MAAM,EAAE,YAAY;IACpB,MAAM,EAAE,OAAO;IACf,MAAM,EAAE,YAAY;CACpB,CAAC;AAEF,MAAM,CAAC,IAAI,CAAC,mBAAW,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,qBAAa,CAAC,mBAAW,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAArC,CAAqC,CAAC,CAAC;AAElE,QAAA,WAAW,GAAiB;IACxC,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM;CACpE,CAAC;AAEW,QAAA,uBAAuB,GAAG;IACtC,qBAAqB;IACrB,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM;IACtG,gBAAgB;IAChB,MAAM;CACN,CAAC;AAMF,SAAgB,MAAM,CAAC,GAAS;IAC/B,IAAM,MAAM,GAAS,EAAE,CAAC;IACxB,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,UAAA,GAAG,IAAI,OAAA,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,EAAtB,CAAsB,CAAC,CAAC;IACxD,OAAO,MAAM,CAAC;AACf,CAAC;AAJD,wBAIC;AAED,SAAgB,UAAU,CAAI,MAAc,EAAE,GAAW,EAAE,GAAS;IACnE,IAAM,GAAG,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACxB,IAAM,MAAM,GAAG,UAAC,GAAW;QAC1B,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,KAAK,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,wCAAiC,GAAG,MAAG,CAAC,CAAC;QACnF,OAAQ,GAAG,CAAC,KAAK,CAAS,IAAI,GAAG,CAAC;IACnC,CAAC,CAAC;IACF,IAAM,MAAM,GAAG,UAAC,GAAkB;QACjC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAU,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mCAA4B,GAAG,MAAG,CAAC,CAAC;QACjF,OAAO,UAAG,MAAM,cAAI,GAAG,CAAC,GAAU,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC,CAAE,CAAC;IACnD,CAAC,CAAC;IACF,OAAO,EAAE,MAAM,QAAA,EAAE,MAAM,QAAA,EAAE,CAAC;AAC3B,CAAC;AAZD,gCAYC;AAED,IAAkB,UAMjB;AAND,WAAkB,UAAU;IAC3B,yCAAO,CAAA;IACP,yCAAO,CAAA;IACP,2CAAQ,CAAA;IACR,yCAAO,CAAA;IACP,qDAAa,CAAA;AACd,CAAC,EANiB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAM3B;AAED,IAAkB,cAMjB;AAND,WAAkB,cAAc;IAC/B,yFAA2B,CAAA;IAC3B,6EAAqB,CAAA;IACrB,iGAA+B,CAAA;IAC/B,yGAAmC,CAAA;IACnC,oGAAiC,CAAA;AAClC,CAAC,EANiB,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAM/B;AAED,IAAkB,UAKjB;AALD,WAAkB,UAAU;IAC3B,iEAAmB,CAAA;IACnB,iEAAmB,CAAA;IACnB,qEAAqB,CAAA;IACrB,qEAAqB,CAAA;AACtB,CAAC,EALiB,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAK3B;AA2BD,SAAgB,gBAAgB,CAAC,SAAoB,EAAE,IAAa;IACnE,QAAQ,SAAS,EAAE;QAClB,6BAAqB,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,6BAAqB,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,6BAAqB,CAAC,CAAC,OAAO,CAAC,CAAC;QAChC,6BAAqB,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC;QACvD,oCAA2B,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACjD,OAAO,CAAC,CAAC,OAAO,SAAS,GAAG,CAAC,CAAC;KAC9B;AACF,CAAC;AATD,4CASC;AAED,SAAgB,KAAK,CAAC,KAAa,EAAE,GAAW,EAAE,GAAW;IAC5D,OAAO,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AACxD,CAAC;AAFD,sBAEC;AAED,SAAgB,QAAQ,CAAC,IAAe;IACvC,IAAM,IAAI,GAAG,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAE1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;QACjC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE;YACzB,OAAO,IAAI,CAAC;SACZ;KACD;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAVD,4BAUC;AAED,SAAgB,cAAc,CAAC,EAAmB;QAAjB,IAAI,UAAA;IACpC,IAAM,KAAK,GAAG,CAAC,IAAI,YAAY,YAAY,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,YAAY,WAAW,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IAErG,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;QAClE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;QAChB,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;KACpB;AACF,CAAC;AATD,wCASC;AAED,SAAgB,iBAAiB,CAAC,SAAoB;IACrD,IAAM,MAAM,GAAG,IAAA,oBAAY,EAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;IAC/D,IAAI,SAAoB,CAAC;IAEzB,IAAI,SAAS,CAAC,IAAI,YAAY,iBAAiB,EAAE;QAChD,SAAS,GAAG,SAAsB,CAAC;KACnC;SAAM;QACN,SAAS,GAAG,IAAA,uBAAe,EAAC,SAAS,CAAC,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC;QAC3B,IAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC;QAE3B,IAAI,GAAG,YAAY,YAAY,EAAE;YAChC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE;gBACpD,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC/D,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC/D,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC/D,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;aAC1C;SACD;aAAM;YACN,IAAM,KAAK,GAAG,CAAC,GAAG,YAAY,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAEnD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE;gBACjD,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC;aAC1B;SACD;KACD;IAED,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACvD,OAAO,MAAM,CAAC;AACf,CAAC;AA7BD,8CA6BC;AAED,SAAgB,YAAY,CAAC,KAAiB,EAAE,MAAkB,EAAE,KAAa,EAAE,MAAc;IAChG,IAAI,CAAC,CAAC,KAAK,YAAY,UAAU,IAAI,KAAK,YAAY,iBAAiB,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAE/G,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;QAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG;YAC3B,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;YAEnB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;gBACrD,IAAM,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC7B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACX,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;gBAClB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC;aACpB;SACD;KACD;AACF,CAAC;AAjBD,oCAiBC;AAED,SAAgB,YAAY,CAAC,IAAe,EAAE,MAAc,EAAE,KAAa,EAAE,MAAc;IAC1F,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;QACpB,OAAO,SAAS,CAAC;IAElB,IAAM,KAAK,GAAG,IAAI,UAAU,CAAC,KAAK,GAAG,MAAM,CAAC,CAAC;IAE7C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;QACtC,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;KACrC;IAED,OAAO,KAAK,CAAC;AACd,CAAC;AAXD,oCAWC;AAED,SAAgB,YAAY,CAAC,MAAkB,EAAE,EAAkC,EAAE,OAAiB,EAAE,KAAc;QAAnE,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAA;IACrE,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM;QAAE,OAAO,SAAS,CAAC;IAExC,IAAM,MAAM,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;IAE/B,IAAI,EAAE,GAAG,CAAC,CAAC;IACX,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IAExD,KAAqB,UAAO,EAAP,mBAAO,EAAP,qBAAO,EAAP,IAAO,EAAE;QAAzB,IAAM,MAAM,gBAAA;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE;YAChD,IAAM,WAAW,GAAG,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YACrC,IAAM,SAAS,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7C,IAAM,SAAS,GAAG,CAAC,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YAC/C,IAAM,UAAU,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;YACvC,IAAM,WAAW,GAAG,CAAC,CAAC;YAEtB,KAAK,CAAC,GAAG,CAAC,WAAW,GAAG,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE;gBACpE,IAAI,CAAC,GAAG,UAAU,EAAE;oBACnB,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBAChB,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBACrB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBAChB,IAAI,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBAErB,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE;wBAC3C,IAAI,KAAK,GAAG,CAAC,CAAC;wBAEd,OAAO,KAAK,GAAG,GAAG,IAAI,CAAC,GAAG,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE;4BACpE,KAAK,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;4BACxB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;yBAChB;wBAED,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;wBACxB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;qBACrB;yBAAM;wBACN,IAAM,UAAU,GAAG,CAAC,CAAC;wBACrB,IAAI,SAAS,GAAG,IAAI,CAAC;wBACrB,IAAI,KAAK,GAAG,CAAC,CAAC;wBACd,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;wBAChB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;wBAErB,OAAO,CAAC,GAAG,SAAS,IAAI,KAAK,GAAG,GAAG,EAAE;4BACpC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;4BAChB,MAAM,GAAG,MAAM,CAAC;4BAChB,MAAM,GAAG,MAAM,CAAC;4BAChB,MAAM,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;4BAEjB,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,MAAM,EAAE;gCAC3C,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;gCACjB,SAAS,GAAG,KAAK,CAAC;gCAClB,MAAM;6BACN;iCAAM;gCACN,KAAK,EAAE,CAAC;gCACR,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;6BACrB;yBACD;wBAED,IAAI,SAAS,EAAE;4BACd,IAAI,KAAK,GAAG,GAAG,EAAE;gCAChB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;gCACrB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;gCACrB,KAAK,IAAI,CAAC,CAAC;6BACX;iCAAM,IAAI,KAAK,GAAG,GAAG,EAAE;gCACvB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC;gCACrB,KAAK,EAAE,CAAC;gCACR,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;6BAChB;iCAAM;gCACN,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;6BAChB;yBACD;wBAED,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;qBAC/B;iBACD;qBAAM,IAAI,CAAC,KAAK,SAAS,EAAE;oBAC3B,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAChB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACtB;qBAAM,EAAE,mBAAmB;oBAC3B,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;oBAChB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBACtB,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;oBAChB,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;iBACtB;aACD;YAED,IAAM,QAAM,GAAG,CAAC,GAAG,WAAW,CAAC;YAE/B,IAAI,KAAK,EAAE;gBACV,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAM,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;gBACrC,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAM,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;aACrC;YAED,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAM,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC;YACpC,MAAM,CAAC,EAAE,EAAE,CAAC,GAAG,QAAM,GAAG,IAAI,CAAC;SAC7B;KACD;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3B,CAAC;AAjGD,oCAiGC;AAED,SAAgB,6BAA6B,CAAC,EAAkC,EAAE,OAAiB;QAAnD,IAAI,UAAA,EAAE,KAAK,WAAA,EAAE,MAAM,YAAA;IAClE,IAAM,IAAI,GAAG,KAAK,GAAG,MAAM,CAAC;IAC5B,IAAM,OAAO,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACrC,IAAM,OAAO,GAAiB,EAAE,CAAC;IACjC,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,KAAqB,UAAO,EAAP,mBAAO,EAAP,qBAAO,EAAP,IAAO,EAAE;QAAzB,IAAM,MAAM,gBAAA;QAChB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,EAAE;YAClD,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;SACrB;QAED,IAAM,MAAM,GAAG,IAAA,cAAW,EAAC,OAAO,CAAC,CAAC;QACpC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACrB,WAAW,IAAI,MAAM,CAAC,UAAU,CAAC;KACjC;IAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;QACvB,IAAM,MAAM,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;QAEf,KAAgB,UAAO,EAAP,mBAAO,EAAP,qBAAO,EAAP,IAAO,EAAE;YAApB,IAAM,CAAC,gBAAA;YACX,MAAM,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;YACtB,MAAM,IAAI,CAAC,CAAC,UAAU,CAAC;SACvB;QAED,OAAO,MAAM,CAAC;KACd;SAAM;QACN,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC;KAClB;AACF,CAAC;AA7BD,sEA6BC;AAED,SAAgB,oBAAoB,CAAC,IAAgB;IACpD,IAAM,MAAM,GAAG,IAAA,oBAAY,EAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEtC,IAAI;QACH,IAAM,SAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC;QACzC,IAAM,SAAS,GAAG,IAAA,iBAAU,EAAC,IAAI,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,SAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAQ,EAApC,CAAoC,CAAC,CAAC;QACnF,MAAM,CAAC,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;QAC/B,MAAM,CAAC,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC;QACjC,SAAO,CAAC,YAAY,CAAC,SAAS,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;KACtC;IAAC,OAAO,CAAM,EAAE;QAChB,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;KACrD;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAdD,oDAcC;AAEM,IAAI,YAAY,GAAyD;IAC/E,MAAM,IAAI,KAAK,CAAC,mFAAmF,CAAC,CAAC;AACtG,CAAC,CAAC;AAFS,QAAA,YAAY,gBAErB;AAEF,IAAI,UAAU,GAAkC,SAAS,CAAC;AAEnD,IAAI,eAAe,GAAiD,UAAC,KAAK,EAAE,MAAM;IACxF,IAAI,CAAC,UAAU;QAAE,UAAU,GAAG,IAAA,oBAAY,EAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,UAAU,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;AACpE,CAAC,CAAC;AAHS,QAAA,eAAe,mBAGxB;AAEF,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE;IACpC,oBAAY,GAAG,UAAC,KAAK,EAAE,MAAM;QAC5B,IAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,OAAO,MAAM,CAAC;IACf,CAAC,CAAC;CACF;AAED,SAAgB,gBAAgB,CAC/B,kBAAwE,EACxE,qBAAoE;IAEpE,oBAAY,GAAG,kBAAkB,CAAC;IAClC,uBAAe,GAAG,qBAAqB,IAAI,uBAAe,CAAC;AAC5D,CAAC;AAND,4CAMC"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  /// <reference types="node" />
2
2
  /// <reference types="node" />
3
- import { Psd, ReadOptions, WriteOptions } from './psd';
3
+ import { Layer, Psd, ReadOptions, WriteOptions } from './psd';
4
4
  import { PsdWriter } from './psdWriter';
5
5
  import { PsdReader } from './psdReader';
6
6
  import { fromByteArray } from 'base64-js';
@@ -19,3 +19,4 @@ export declare function readPsd(buffer: ArrayBuffer | BufferLike, options?: Read
19
19
  export declare function writePsd(psd: Psd, options?: WriteOptions): ArrayBuffer;
20
20
  export declare function writePsdUint8Array(psd: Psd, options?: WriteOptions): Uint8Array;
21
21
  export declare function writePsdBuffer(psd: Psd, options?: WriteOptions): Buffer;
22
+ export declare function decodeLayerPixels(layer: Layer, useImageData?: boolean): void;
package/dist/index.js CHANGED
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0;
17
+ exports.decodeLayerPixels = exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0;
18
18
  var psdWriter_1 = require("./psdWriter");
19
19
  var psdReader_1 = require("./psdReader");
20
20
  var base64_js_1 = require("base64-js");
@@ -50,4 +50,8 @@ function writePsdBuffer(psd, options) {
50
50
  return Buffer.from(writePsdUint8Array(psd, options));
51
51
  }
52
52
  exports.writePsdBuffer = writePsdBuffer;
53
+ function decodeLayerPixels(layer, useImageData) {
54
+ (0, psdReader_1.decodeLayerImageData)(layer, useImageData);
55
+ }
56
+ exports.decodeLayerPixels = decodeLayerPixels;
53
57
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,yCAA4H;AAC5H,yCAAkF;AAClF,uCAA0C;AAE1C,wCAAsB;AACtB,wCAAsB;AACtB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AACzB,wCAAsB;AAST,QAAA,iBAAiB,GAAG,yBAAa,CAAC;AAE/C,SAAgB,OAAO,CAAC,MAAgC,EAAE,OAAqB;IAC9E,IAAM,MAAM,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC;QAClC,IAAA,wBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACnE,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAC;IACtB,OAAO,IAAA,mBAAe,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AALD,0BAKC;AAED,SAAgB,QAAQ,CAAC,GAAQ,EAAE,OAAsB;IACxD,IAAM,MAAM,GAAG,IAAA,wBAAY,GAAE,CAAC;IAC9B,IAAA,oBAAgB,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAA,2BAAe,EAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAJD,4BAIC;AAED,SAAgB,kBAAkB,CAAC,GAAQ,EAAE,OAAsB;IAClE,IAAM,MAAM,GAAG,IAAA,wBAAY,GAAE,CAAC;IAC9B,IAAA,oBAAgB,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAA,iCAAqB,EAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAJD,gDAIC;AAED,SAAgB,cAAc,CAAC,GAAQ,EAAE,OAAsB;IAC9D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KACzD;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AACtD,CAAC;AAND,wCAMC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,yCAA4H;AAC5H,yCAAwG;AACxG,uCAA0C;AAE1C,wCAAsB;AACtB,wCAAsB;AACtB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AACzB,wCAAsB;AAST,QAAA,iBAAiB,GAAG,yBAAa,CAAC;AAE/C,SAAgB,OAAO,CAAC,MAAgC,EAAE,OAAqB;IAC9E,IAAM,MAAM,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC;QAClC,IAAA,wBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACnE,IAAA,wBAAY,EAAC,MAAM,CAAC,CAAC;IACtB,OAAO,IAAA,mBAAe,EAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AALD,0BAKC;AAED,SAAgB,QAAQ,CAAC,GAAQ,EAAE,OAAsB;IACxD,IAAM,MAAM,GAAG,IAAA,wBAAY,GAAE,CAAC;IAC9B,IAAA,oBAAgB,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAA,2BAAe,EAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAJD,4BAIC;AAED,SAAgB,kBAAkB,CAAC,GAAQ,EAAE,OAAsB;IAClE,IAAM,MAAM,GAAG,IAAA,wBAAY,GAAE,CAAC;IAC9B,IAAA,oBAAgB,EAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,IAAA,iCAAqB,EAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAJD,gDAIC;AAED,SAAgB,cAAc,CAAC,GAAQ,EAAE,OAAsB;IAC9D,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE;QAClC,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;KACzD;IAED,OAAO,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AACtD,CAAC;AAND,wCAMC;AAED,SAAgB,iBAAiB,CAAC,KAAY,EAAE,YAAsB;IACrE,IAAA,gCAAoB,EAAC,KAAK,EAAE,YAAY,CAAC,CAAC;AAC3C,CAAC;AAFD,8CAEC"}
package/dist/psd.d.ts CHANGED
@@ -1743,6 +1743,32 @@ export interface Annotation {
1743
1743
  date: string;
1744
1744
  data: string | Uint8Array;
1745
1745
  }
1746
+ export declare const enum ChannelID {
1747
+ Color0 = 0,
1748
+ Color1 = 1,
1749
+ Color2 = 2,
1750
+ Color3 = 3,
1751
+ Transparency = -1,
1752
+ UserMask = -2,
1753
+ RealUserMask = -3
1754
+ }
1755
+ export declare const enum Compression {
1756
+ RawData = 0,
1757
+ RleCompressed = 1,
1758
+ ZipWithoutPrediction = 2,
1759
+ ZipWithPrediction = 3
1760
+ }
1761
+ export interface LayerRawDataChannel {
1762
+ id: ChannelID;
1763
+ compression: Compression;
1764
+ data: Uint8Array | undefined;
1765
+ }
1766
+ export interface LayerRawData {
1767
+ colorMode: ColorMode;
1768
+ bitsPerChannel: number;
1769
+ channels: LayerRawDataChannel[];
1770
+ large: boolean;
1771
+ }
1746
1772
  export interface Layer extends LayerAdditionalInfo {
1747
1773
  top?: number;
1748
1774
  left?: number;
@@ -1756,6 +1782,7 @@ export interface Layer extends LayerAdditionalInfo {
1756
1782
  clipping?: boolean;
1757
1783
  canvas?: HTMLCanvasElement;
1758
1784
  imageData?: PixelData;
1785
+ rawData?: LayerRawData;
1759
1786
  children?: Layer[];
1760
1787
  /** Applies only for layer groups. */
1761
1788
  opened?: boolean;
@@ -1811,6 +1838,7 @@ export interface ReadOptions {
1811
1838
  * (image data will appear in `imageData` fields instead of `canvas` fields)
1812
1839
  * This avoids issues with canvas premultiplied alpha corrupting image data. */
1813
1840
  useImageData?: boolean;
1841
+ useRawData?: boolean;
1814
1842
  /** Loads thumbnail raw data instead of decoding it's content into canvas.
1815
1843
  * `thumnailRaw` field is used instead. */
1816
1844
  useRawThumbnail?: boolean;