ag-psd 17.0.0 → 17.0.2
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 +7 -0
- package/dist/additionalInfo.js +9 -12
- package/dist/additionalInfo.js.map +1 -1
- package/dist/bundle.js +57 -23
- package/dist/descriptor.d.ts +18 -8
- package/dist/descriptor.js +34 -7
- package/dist/descriptor.js.map +1 -1
- package/dist/imageResources.js +13 -4
- package/dist/imageResources.js.map +1 -1
- package/dist/psd.d.ts +8 -0
- package/dist/psdWriter.js +1 -0
- package/dist/psdWriter.js.map +1 -1
- package/dist-es/additionalInfo.js +10 -13
- package/dist-es/additionalInfo.js.map +1 -1
- package/dist-es/descriptor.d.ts +18 -8
- package/dist-es/descriptor.js +30 -5
- package/dist-es/descriptor.js.map +1 -1
- package/dist-es/imageResources.js +13 -4
- package/dist-es/imageResources.js.map +1 -1
- package/dist-es/psd.d.ts +8 -0
- package/dist-es/psdWriter.js +1 -0
- package/dist-es/psdWriter.js.map +1 -1
- package/package.json +1 -1
- package/src/additionalInfo.ts +11 -6
- package/src/descriptor.ts +45 -13
- package/src/imageResources.ts +17 -4
- package/src/psd.ts +10 -0
- package/src/psdWriter.ts +1 -0
package/dist/bundle.js
CHANGED
|
@@ -346,6 +346,10 @@ addHandler('TySh', hasKey('text'), function (reader, target, leftBytes) {
|
|
|
346
346
|
rotate: descriptor_1.Ornt.decode(warp.warpRotate),
|
|
347
347
|
},
|
|
348
348
|
};
|
|
349
|
+
if (text.bounds)
|
|
350
|
+
target.text.bounds = (0, descriptor_1.descBoundsToBounds)(text.bounds);
|
|
351
|
+
if (text.boundingBox)
|
|
352
|
+
target.text.boundingBox = (0, descriptor_1.descBoundsToBounds)(text.boundingBox);
|
|
349
353
|
if (text.EngineData) {
|
|
350
354
|
var engineData = (0, engineData_1.parseEngineData)(text.EngineData);
|
|
351
355
|
var textData = (0, text_1.decodeEngineData)(engineData);
|
|
@@ -363,20 +367,13 @@ addHandler('TySh', hasKey('text'), function (reader, target, leftBytes) {
|
|
|
363
367
|
var text = target.text;
|
|
364
368
|
var warp = text.warp || {};
|
|
365
369
|
var transform = text.transform || [1, 0, 0, 1, 0, 0];
|
|
366
|
-
var textDescriptor = {
|
|
367
|
-
'Txt ': (text.text || '').replace(/\r?\n/g, '\r'),
|
|
368
|
-
textGridding: descriptor_1.textGridding.encode(text.gridding),
|
|
369
|
-
Ornt: descriptor_1.Ornt.encode(text.orientation),
|
|
370
|
-
AntA: descriptor_1.Annt.encode(text.antiAlias),
|
|
371
|
-
TextIndex: text.index || 0,
|
|
372
|
-
EngineData: (0, engineData_1.serializeEngineData)((0, text_1.encodeEngineData)(text)),
|
|
373
|
-
};
|
|
370
|
+
var textDescriptor = __assign(__assign(__assign({ 'Txt ': (text.text || '').replace(/\r?\n/g, '\r'), textGridding: descriptor_1.textGridding.encode(text.gridding), Ornt: descriptor_1.Ornt.encode(text.orientation), AntA: descriptor_1.Annt.encode(text.antiAlias) }, (text.bounds ? { bounds: (0, descriptor_1.boundsToDescBounds)(text.bounds) } : {})), (text.boundingBox ? { boundingBox: (0, descriptor_1.boundsToDescBounds)(text.boundingBox) } : {})), { TextIndex: text.index || 0, EngineData: (0, engineData_1.serializeEngineData)((0, text_1.encodeEngineData)(text)) });
|
|
374
371
|
(0, psdWriter_1.writeInt16)(writer, 1); // version
|
|
375
372
|
for (var i = 0; i < 6; i++) {
|
|
376
373
|
(0, psdWriter_1.writeFloat64)(writer, transform[i]);
|
|
377
374
|
}
|
|
378
375
|
(0, psdWriter_1.writeInt16)(writer, 50); // text version
|
|
379
|
-
(0, descriptor_1.writeVersionAndDescriptor)(writer, '', 'TxLr', textDescriptor);
|
|
376
|
+
(0, descriptor_1.writeVersionAndDescriptor)(writer, '', 'TxLr', textDescriptor, 'text');
|
|
380
377
|
(0, psdWriter_1.writeInt16)(writer, 1); // warp version
|
|
381
378
|
(0, descriptor_1.writeVersionAndDescriptor)(writer, '', 'warp', encodeWarp(warp));
|
|
382
379
|
(0, psdWriter_1.writeFloat32)(writer, text.left);
|
|
@@ -3173,14 +3170,14 @@ addHandler('lfx2', function (target) { return target.effects !== undefined && !h
|
|
|
3173
3170
|
if (version !== 0)
|
|
3174
3171
|
throw new Error("Invalid lfx2 version");
|
|
3175
3172
|
var desc = (0, descriptor_1.readVersionAndDescriptor)(reader);
|
|
3176
|
-
// console.log(require('util').inspect(desc, false, 99, true));
|
|
3173
|
+
// console.log('READ', require('util').inspect(desc, false, 99, true));
|
|
3177
3174
|
// TODO: don't discard if we got it from lmfx
|
|
3178
3175
|
// discard if read in 'lrFX' section
|
|
3179
3176
|
target.effects = (0, descriptor_1.parseEffects)(desc, !!options.logMissingFeatures);
|
|
3180
3177
|
(0, psdReader_1.skipBytes)(reader, left());
|
|
3181
3178
|
}, function (writer, target, _, options) {
|
|
3182
|
-
var desc = (0, descriptor_1.serializeEffects)(target.effects, !!options.logMissingFeatures,
|
|
3183
|
-
// console.log(require('util').inspect(desc, false, 99, true));
|
|
3179
|
+
var desc = (0, descriptor_1.serializeEffects)(target.effects, !!options.logMissingFeatures, true);
|
|
3180
|
+
// console.log('WRITE', require('util').inspect(desc, false, 99, true));
|
|
3184
3181
|
(0, psdWriter_1.writeUint32)(writer, 0); // version
|
|
3185
3182
|
(0, descriptor_1.writeVersionAndDescriptor)(writer, '', 'null', desc);
|
|
3186
3183
|
});
|
|
@@ -3316,8 +3313,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
3316
3313
|
return __assign.apply(this, arguments);
|
|
3317
3314
|
};
|
|
3318
3315
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3319
|
-
exports.
|
|
3320
|
-
exports.prjM = exports.FlMd = exports.IntC = exports.IntE = exports.Drct = exports.WndM = exports.CntE = exports.FlCl = exports.ExtR = exports.ExtT = exports.DfsM = exports.blurType = exports.Lns = exports.MztT = exports.Chnl = exports.Dstr = exports.ZZTy = exports.Wvtp = exports.SphM = exports.RplS = exports.Cnvr = exports.UndA = exports.DspM = exports.SmBQ = exports.SmBM = exports.BlrQ = exports.BlrM = exports.strokeStyleLineAlignment = exports.strokeStyleLineJoinType = void 0;
|
|
3316
|
+
exports.ESliceOrigin = exports.ESliceVertAlign = exports.ESliceHorzAlign = exports.ESliceType = exports.FrFl = exports.FStl = exports.ClrS = exports.gradientInterpolationMethodType = exports.stdTrackID = exports.animInterpStyleEnum = exports.GrdT = exports.IGSr = exports.BETE = exports.BESs = exports.bvlT = exports.BESl = exports.BlnM = exports.warpStyle = exports.Annt = exports.Ornt = exports.textGridding = exports.frac = exports.unitsValue = exports.unitsPercentF = exports.unitsPercent = exports.unitsAngle = exports.parseUnitsToNumber = exports.parseUnitsOrNumber = exports.parseUnits = exports.parsePercentOrAngle = exports.parsePercent = exports.parseAngle = exports.serializeColor = exports.parseColor = exports.serializeVectorContent = exports.parseVectorContent = exports.serializeTrackList = exports.parseTrackList = exports.parseEffects = exports.serializeEffects = exports.boundsToDescBounds = exports.descBoundsToBounds = exports.xyToHorzVrtc = exports.horzVrtcToXY = exports.writeVersionAndDescriptor = exports.readVersionAndDescriptor = exports.writeDescriptorStructure = exports.readDescriptorStructure = exports.readAsciiStringOrClassId = exports.setLogErrors = void 0;
|
|
3317
|
+
exports.prjM = exports.FlMd = exports.IntC = exports.IntE = exports.Drct = exports.WndM = exports.CntE = exports.FlCl = exports.ExtR = exports.ExtT = exports.DfsM = exports.blurType = exports.Lns = exports.MztT = exports.Chnl = exports.Dstr = exports.ZZTy = exports.Wvtp = exports.SphM = exports.RplS = exports.Cnvr = exports.UndA = exports.DspM = exports.SmBQ = exports.SmBM = exports.BlrQ = exports.BlrM = exports.strokeStyleLineAlignment = exports.strokeStyleLineJoinType = exports.strokeStyleLineCapType = exports.ESliceBGColorType = void 0;
|
|
3321
3318
|
var helpers_1 = require("./helpers");
|
|
3322
3319
|
var psdReader_1 = require("./psdReader");
|
|
3323
3320
|
var psdWriter_1 = require("./psdWriter");
|
|
@@ -3412,6 +3409,7 @@ var fieldToExtType = {
|
|
|
3412
3409
|
sheetStyle: nullType,
|
|
3413
3410
|
translation: nullType,
|
|
3414
3411
|
Skew: nullType,
|
|
3412
|
+
boundingBox: makeType('', 'boundingBox'),
|
|
3415
3413
|
'Lnk ': makeType('', 'ExternalFileLink'),
|
|
3416
3414
|
frameReader: makeType('', 'FrameReader'),
|
|
3417
3415
|
effectParams: makeType('', 'motionTrackEffectParams'),
|
|
@@ -3684,7 +3682,10 @@ function writeDescriptorStructure(writer, name, classId, value, root) {
|
|
|
3684
3682
|
continue;
|
|
3685
3683
|
var type = getTypeByKey(key, value[key], root, value);
|
|
3686
3684
|
var extType = fieldToExtType[key];
|
|
3687
|
-
if (key === '
|
|
3685
|
+
if (key === 'bounds' && root === 'text') {
|
|
3686
|
+
extType = makeType('', 'bounds');
|
|
3687
|
+
}
|
|
3688
|
+
else if (key === 'origin') {
|
|
3688
3689
|
type = root === 'slices' ? 'enum' : 'Objc';
|
|
3689
3690
|
}
|
|
3690
3691
|
else if ((key === 'Cyn ' || key === 'Mgnt' || key === 'Ylw ' || key === 'Blck') && value._classID === 'CMYC') {
|
|
@@ -4099,6 +4100,26 @@ function xyToHorzVrtc(xy) {
|
|
|
4099
4100
|
return { Hrzn: xy.x, Vrtc: xy.y };
|
|
4100
4101
|
}
|
|
4101
4102
|
exports.xyToHorzVrtc = xyToHorzVrtc;
|
|
4103
|
+
function descBoundsToBounds(desc) {
|
|
4104
|
+
return {
|
|
4105
|
+
top: parseUnits(desc['Top ']),
|
|
4106
|
+
left: parseUnits(desc.Left),
|
|
4107
|
+
right: parseUnits(desc.Rght),
|
|
4108
|
+
bottom: parseUnits(desc.Btom),
|
|
4109
|
+
};
|
|
4110
|
+
}
|
|
4111
|
+
exports.descBoundsToBounds = descBoundsToBounds;
|
|
4112
|
+
function boundsToDescBounds(bounds) {
|
|
4113
|
+
var _a;
|
|
4114
|
+
return _a = {
|
|
4115
|
+
Left: unitsValue(bounds.left, 'bounds.left')
|
|
4116
|
+
},
|
|
4117
|
+
_a['Top '] = unitsValue(bounds.top, 'bounds.top'),
|
|
4118
|
+
_a.Rght = unitsValue(bounds.right, 'bounds.right'),
|
|
4119
|
+
_a.Btom = unitsValue(bounds.bottom, 'bounds.bottom'),
|
|
4120
|
+
_a;
|
|
4121
|
+
}
|
|
4122
|
+
exports.boundsToDescBounds = boundsToDescBounds;
|
|
4102
4123
|
function parseFxObject(fx) {
|
|
4103
4124
|
var stroke = {
|
|
4104
4125
|
enabled: !!fx.enab,
|
|
@@ -4147,11 +4168,11 @@ function serializeFxObject(stroke) {
|
|
|
4147
4168
|
function serializeEffects(e, log, multi) {
|
|
4148
4169
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
4149
4170
|
var info = multi ? {
|
|
4150
|
-
'Scl ':
|
|
4171
|
+
'Scl ': unitsPercentF((_a = e.scale) !== null && _a !== void 0 ? _a : 1),
|
|
4151
4172
|
masterFXSwitch: !e.disabled,
|
|
4152
4173
|
} : {
|
|
4153
4174
|
masterFXSwitch: !e.disabled,
|
|
4154
|
-
'Scl ':
|
|
4175
|
+
'Scl ': unitsPercentF((_b = e.scale) !== null && _b !== void 0 ? _b : 1),
|
|
4155
4176
|
};
|
|
4156
4177
|
var arrayKeys = ['dropShadow', 'innerShadow', 'solidFill', 'gradientOverlay', 'stroke'];
|
|
4157
4178
|
for (var _i = 0, arrayKeys_1 = arrayKeys; _i < arrayKeys_1.length; _i++) {
|
|
@@ -4201,6 +4222,9 @@ function serializeEffects(e, log, multi) {
|
|
|
4201
4222
|
info.numModifyingFX++;
|
|
4202
4223
|
}
|
|
4203
4224
|
}
|
|
4225
|
+
else if (value.enabled) {
|
|
4226
|
+
info.numModifyingFX++;
|
|
4227
|
+
}
|
|
4204
4228
|
}
|
|
4205
4229
|
}
|
|
4206
4230
|
return info;
|
|
@@ -4590,7 +4614,7 @@ function serializeEffectObject(obj, objName, reportErrors) {
|
|
|
4590
4614
|
result.sdwO = unitsPercent(val);
|
|
4591
4615
|
break;
|
|
4592
4616
|
case 'angle':
|
|
4593
|
-
if (objName === 'gradientOverlay') {
|
|
4617
|
+
if (objName === 'gradientOverlay' || objName === 'patternFill') {
|
|
4594
4618
|
result.Angl = unitsAngle(val);
|
|
4595
4619
|
}
|
|
4596
4620
|
else {
|
|
@@ -4860,7 +4884,7 @@ function serializeColor(color) {
|
|
|
4860
4884
|
return { _name: '', _classID: 'RGBC', 'Rd ': color.r || 0, 'Grn ': color.g || 0, 'Bl ': color.b || 0 };
|
|
4861
4885
|
}
|
|
4862
4886
|
else if ('fr' in color) {
|
|
4863
|
-
return { _name: '', _classID: '
|
|
4887
|
+
return { _name: '', _classID: 'RGBC', redFloat: color.fr, greenFloat: color.fg, blueFloat: color.fb };
|
|
4864
4888
|
}
|
|
4865
4889
|
else if ('h' in color) {
|
|
4866
4890
|
return { _name: '', _classID: 'HSBC', 'H ': unitsAngle(color.h * 360), Strt: color.s || 0, Brgh: color.b || 0 };
|
|
@@ -6620,6 +6644,15 @@ addHandler(1032, function (target) { return target.gridAndGuidesInformation !==
|
|
|
6620
6644
|
(0, psdWriter_1.writeUint8)(writer, g.direction === 'horizontal' ? 1 : 0);
|
|
6621
6645
|
}
|
|
6622
6646
|
});
|
|
6647
|
+
helpers_1.MOCK_HANDLERS && addHandler(1092, // ???
|
|
6648
|
+
function (// ???
|
|
6649
|
+
target) { return target._ir1092 !== undefined; }, function (reader, target, left) {
|
|
6650
|
+
LOG_MOCK_HANDLERS && console.log('image resource 1092', left());
|
|
6651
|
+
// 16 bytes, seems to be 4 integers
|
|
6652
|
+
target._ir1092 = (0, psdReader_1.readBytes)(reader, left());
|
|
6653
|
+
}, function (writer, target) {
|
|
6654
|
+
(0, psdWriter_1.writeBytes)(writer, target._ir1092);
|
|
6655
|
+
});
|
|
6623
6656
|
// 0 - normal, 7 - multiply, 8 - screen, 23 - difference
|
|
6624
6657
|
var onionSkinsBlendModes = [
|
|
6625
6658
|
'normal', undefined, undefined, undefined, undefined, undefined, undefined, 'multiply',
|
|
@@ -6830,10 +6863,10 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
|
|
|
6830
6863
|
var associatedLayerId = origin_1 == 'layer' ? (0, psdReader_1.readUint32)(reader) : 0;
|
|
6831
6864
|
var name_3 = (0, psdReader_1.readUnicodeString)(reader);
|
|
6832
6865
|
var type = clamped(sliceTypes, (0, psdReader_1.readUint32)(reader));
|
|
6833
|
-
var top_2 = (0, psdReader_1.readInt32)(reader);
|
|
6834
6866
|
var left_1 = (0, psdReader_1.readInt32)(reader);
|
|
6835
|
-
var
|
|
6867
|
+
var top_2 = (0, psdReader_1.readInt32)(reader);
|
|
6836
6868
|
var right_1 = (0, psdReader_1.readInt32)(reader);
|
|
6869
|
+
var bottom_1 = (0, psdReader_1.readInt32)(reader);
|
|
6837
6870
|
var url = (0, psdReader_1.readUnicodeString)(reader);
|
|
6838
6871
|
var target_1 = (0, psdReader_1.readUnicodeString)(reader);
|
|
6839
6872
|
var message = (0, psdReader_1.readUnicodeString)(reader);
|
|
@@ -6939,10 +6972,10 @@ target) { return target.slices ? target.slices.length : 0; }, function (reader,
|
|
|
6939
6972
|
(0, psdWriter_1.writeUint32)(writer, slice.associatedLayerId);
|
|
6940
6973
|
(0, psdWriter_1.writeUnicodeString)(writer, slice.name);
|
|
6941
6974
|
(0, psdWriter_1.writeUint32)(writer, sliceTypes.indexOf(slice.type));
|
|
6942
|
-
(0, psdWriter_1.writeInt32)(writer, slice.bounds.top);
|
|
6943
6975
|
(0, psdWriter_1.writeInt32)(writer, slice.bounds.left);
|
|
6944
|
-
(0, psdWriter_1.writeInt32)(writer, slice.bounds.
|
|
6976
|
+
(0, psdWriter_1.writeInt32)(writer, slice.bounds.top);
|
|
6945
6977
|
(0, psdWriter_1.writeInt32)(writer, slice.bounds.right);
|
|
6978
|
+
(0, psdWriter_1.writeInt32)(writer, slice.bounds.bottom);
|
|
6946
6979
|
(0, psdWriter_1.writeUnicodeString)(writer, slice.url);
|
|
6947
6980
|
(0, psdWriter_1.writeUnicodeString)(writer, slice.target);
|
|
6948
6981
|
(0, psdWriter_1.writeUnicodeString)(writer, slice.message);
|
|
@@ -8446,6 +8479,7 @@ function writePascalString(writer, text, padTo) {
|
|
|
8446
8479
|
writeUint8(writer, length);
|
|
8447
8480
|
for (var i = 0; i < length; i++) {
|
|
8448
8481
|
var code = text.charCodeAt(i);
|
|
8482
|
+
// writeUint8(writer, code); // for testing
|
|
8449
8483
|
writeUint8(writer, code < 128 ? code : '?'.charCodeAt(0));
|
|
8450
8484
|
}
|
|
8451
8485
|
while (++length % padTo) {
|
package/dist/descriptor.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AntiAlias, BevelDirection, BevelStyle, BevelTechnique, BlendMode, Color, GlowSource, GlowTechnique, GradientStyle, InterpolationMethod, LayerEffectsInfo, LineAlignment, LineCapType, LineJoinType, Orientation, TextGridding, TimelineKeyInterpolation, TimelineTrack, TimelineTrackType, Units, UnitsValue, VectorContent, WarpStyle } from './psd';
|
|
1
|
+
import { AntiAlias, BevelDirection, BevelStyle, BevelTechnique, BlendMode, Color, GlowSource, GlowTechnique, GradientStyle, InterpolationMethod, LayerEffectsInfo, LineAlignment, LineCapType, LineJoinType, Orientation, TextGridding, TimelineKeyInterpolation, TimelineTrack, TimelineTrackType, Units, UnitsBounds, UnitsValue, VectorContent, WarpStyle } from './psd';
|
|
2
2
|
import { PsdReader } from './psdReader';
|
|
3
3
|
import { PsdWriter } from './psdWriter';
|
|
4
4
|
export declare function setLogErrors(value: boolean): void;
|
|
@@ -43,7 +43,7 @@ export type DescriptorColor = {
|
|
|
43
43
|
'B ': number;
|
|
44
44
|
} | {
|
|
45
45
|
_name: '';
|
|
46
|
-
_classID: '
|
|
46
|
+
_classID: 'RGBC';
|
|
47
47
|
redFloat: number;
|
|
48
48
|
greenFloat: number;
|
|
49
49
|
blueFloat: number;
|
|
@@ -121,11 +121,19 @@ export interface StrokeDescriptor {
|
|
|
121
121
|
strokeStyleContent: DescriptorVectorContent;
|
|
122
122
|
strokeStyleResolution: number;
|
|
123
123
|
}
|
|
124
|
+
export interface BoundsDescriptor {
|
|
125
|
+
Left: DescriptorUnitsValue;
|
|
126
|
+
'Top ': DescriptorUnitsValue;
|
|
127
|
+
Rght: DescriptorUnitsValue;
|
|
128
|
+
Btom: DescriptorUnitsValue;
|
|
129
|
+
}
|
|
124
130
|
export interface TextDescriptor {
|
|
125
131
|
'Txt ': string;
|
|
126
132
|
textGridding: string;
|
|
127
133
|
Ornt: string;
|
|
128
134
|
AntA: string;
|
|
135
|
+
bounds?: BoundsDescriptor;
|
|
136
|
+
boundingBox?: BoundsDescriptor;
|
|
129
137
|
TextIndex: number;
|
|
130
138
|
EngineData?: Uint8Array;
|
|
131
139
|
}
|
|
@@ -209,6 +217,8 @@ export declare function xyToHorzVrtc(xy: {
|
|
|
209
217
|
x: number;
|
|
210
218
|
y: number;
|
|
211
219
|
}): HrznVrtcDescriptor;
|
|
220
|
+
export declare function descBoundsToBounds(desc: BoundsDescriptor): UnitsBounds;
|
|
221
|
+
export declare function boundsToDescBounds(bounds: UnitsBounds): BoundsDescriptor;
|
|
212
222
|
export type TimelineAnimKeyDescriptor = {
|
|
213
223
|
Type: 'keyType.Opct';
|
|
214
224
|
Opct: DescriptorUnitsValue;
|
|
@@ -297,17 +307,17 @@ export interface Lfx2Descriptor {
|
|
|
297
307
|
export interface LmfxDescriptor {
|
|
298
308
|
'Scl '?: DescriptorUnitsValue;
|
|
299
309
|
masterFXSwitch?: boolean;
|
|
300
|
-
numModifyingFX?: number;
|
|
301
|
-
OrGl?: EffectDescriptor;
|
|
302
|
-
IrGl?: EffectDescriptor;
|
|
303
|
-
ebbl?: EffectDescriptor;
|
|
304
|
-
ChFX?: EffectDescriptor;
|
|
305
310
|
dropShadowMulti?: EffectDescriptor[];
|
|
306
311
|
innerShadowMulti?: EffectDescriptor[];
|
|
312
|
+
OrGl?: EffectDescriptor;
|
|
307
313
|
solidFillMulti?: EffectDescriptor[];
|
|
308
314
|
gradientFillMulti?: EffectDescriptor[];
|
|
309
|
-
frameFXMulti?: EffectDescriptor[];
|
|
310
315
|
patternFill?: EffectDescriptor;
|
|
316
|
+
frameFXMulti?: EffectDescriptor[];
|
|
317
|
+
IrGl?: EffectDescriptor;
|
|
318
|
+
ebbl?: EffectDescriptor;
|
|
319
|
+
ChFX?: EffectDescriptor;
|
|
320
|
+
numModifyingFX?: number;
|
|
311
321
|
}
|
|
312
322
|
export declare function serializeEffects(e: LayerEffectsInfo, log: boolean, multi: boolean): Lfx2Descriptor & LmfxDescriptor;
|
|
313
323
|
export declare function parseEffects(info: Lfx2Descriptor & LmfxDescriptor, log: boolean): LayerEffectsInfo;
|
package/dist/descriptor.js
CHANGED
|
@@ -11,8 +11,8 @@ var __assign = (this && this.__assign) || function () {
|
|
|
11
11
|
return __assign.apply(this, arguments);
|
|
12
12
|
};
|
|
13
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.
|
|
15
|
-
exports.prjM = exports.FlMd = exports.IntC = exports.IntE = exports.Drct = exports.WndM = exports.CntE = exports.FlCl = exports.ExtR = exports.ExtT = exports.DfsM = exports.blurType = exports.Lns = exports.MztT = exports.Chnl = exports.Dstr = exports.ZZTy = exports.Wvtp = exports.SphM = exports.RplS = exports.Cnvr = exports.UndA = exports.DspM = exports.SmBQ = exports.SmBM = exports.BlrQ = exports.BlrM = exports.strokeStyleLineAlignment = exports.strokeStyleLineJoinType = void 0;
|
|
14
|
+
exports.ESliceOrigin = exports.ESliceVertAlign = exports.ESliceHorzAlign = exports.ESliceType = exports.FrFl = exports.FStl = exports.ClrS = exports.gradientInterpolationMethodType = exports.stdTrackID = exports.animInterpStyleEnum = exports.GrdT = exports.IGSr = exports.BETE = exports.BESs = exports.bvlT = exports.BESl = exports.BlnM = exports.warpStyle = exports.Annt = exports.Ornt = exports.textGridding = exports.frac = exports.unitsValue = exports.unitsPercentF = exports.unitsPercent = exports.unitsAngle = exports.parseUnitsToNumber = exports.parseUnitsOrNumber = exports.parseUnits = exports.parsePercentOrAngle = exports.parsePercent = exports.parseAngle = exports.serializeColor = exports.parseColor = exports.serializeVectorContent = exports.parseVectorContent = exports.serializeTrackList = exports.parseTrackList = exports.parseEffects = exports.serializeEffects = exports.boundsToDescBounds = exports.descBoundsToBounds = exports.xyToHorzVrtc = exports.horzVrtcToXY = exports.writeVersionAndDescriptor = exports.readVersionAndDescriptor = exports.writeDescriptorStructure = exports.readDescriptorStructure = exports.readAsciiStringOrClassId = exports.setLogErrors = void 0;
|
|
15
|
+
exports.prjM = exports.FlMd = exports.IntC = exports.IntE = exports.Drct = exports.WndM = exports.CntE = exports.FlCl = exports.ExtR = exports.ExtT = exports.DfsM = exports.blurType = exports.Lns = exports.MztT = exports.Chnl = exports.Dstr = exports.ZZTy = exports.Wvtp = exports.SphM = exports.RplS = exports.Cnvr = exports.UndA = exports.DspM = exports.SmBQ = exports.SmBM = exports.BlrQ = exports.BlrM = exports.strokeStyleLineAlignment = exports.strokeStyleLineJoinType = exports.strokeStyleLineCapType = exports.ESliceBGColorType = void 0;
|
|
16
16
|
var helpers_1 = require("./helpers");
|
|
17
17
|
var psdReader_1 = require("./psdReader");
|
|
18
18
|
var psdWriter_1 = require("./psdWriter");
|
|
@@ -107,6 +107,7 @@ var fieldToExtType = {
|
|
|
107
107
|
sheetStyle: nullType,
|
|
108
108
|
translation: nullType,
|
|
109
109
|
Skew: nullType,
|
|
110
|
+
boundingBox: makeType('', 'boundingBox'),
|
|
110
111
|
'Lnk ': makeType('', 'ExternalFileLink'),
|
|
111
112
|
frameReader: makeType('', 'FrameReader'),
|
|
112
113
|
effectParams: makeType('', 'motionTrackEffectParams'),
|
|
@@ -379,7 +380,10 @@ function writeDescriptorStructure(writer, name, classId, value, root) {
|
|
|
379
380
|
continue;
|
|
380
381
|
var type = getTypeByKey(key, value[key], root, value);
|
|
381
382
|
var extType = fieldToExtType[key];
|
|
382
|
-
if (key === '
|
|
383
|
+
if (key === 'bounds' && root === 'text') {
|
|
384
|
+
extType = makeType('', 'bounds');
|
|
385
|
+
}
|
|
386
|
+
else if (key === 'origin') {
|
|
383
387
|
type = root === 'slices' ? 'enum' : 'Objc';
|
|
384
388
|
}
|
|
385
389
|
else if ((key === 'Cyn ' || key === 'Mgnt' || key === 'Ylw ' || key === 'Blck') && value._classID === 'CMYC') {
|
|
@@ -794,6 +798,26 @@ function xyToHorzVrtc(xy) {
|
|
|
794
798
|
return { Hrzn: xy.x, Vrtc: xy.y };
|
|
795
799
|
}
|
|
796
800
|
exports.xyToHorzVrtc = xyToHorzVrtc;
|
|
801
|
+
function descBoundsToBounds(desc) {
|
|
802
|
+
return {
|
|
803
|
+
top: parseUnits(desc['Top ']),
|
|
804
|
+
left: parseUnits(desc.Left),
|
|
805
|
+
right: parseUnits(desc.Rght),
|
|
806
|
+
bottom: parseUnits(desc.Btom),
|
|
807
|
+
};
|
|
808
|
+
}
|
|
809
|
+
exports.descBoundsToBounds = descBoundsToBounds;
|
|
810
|
+
function boundsToDescBounds(bounds) {
|
|
811
|
+
var _a;
|
|
812
|
+
return _a = {
|
|
813
|
+
Left: unitsValue(bounds.left, 'bounds.left')
|
|
814
|
+
},
|
|
815
|
+
_a['Top '] = unitsValue(bounds.top, 'bounds.top'),
|
|
816
|
+
_a.Rght = unitsValue(bounds.right, 'bounds.right'),
|
|
817
|
+
_a.Btom = unitsValue(bounds.bottom, 'bounds.bottom'),
|
|
818
|
+
_a;
|
|
819
|
+
}
|
|
820
|
+
exports.boundsToDescBounds = boundsToDescBounds;
|
|
797
821
|
function parseFxObject(fx) {
|
|
798
822
|
var stroke = {
|
|
799
823
|
enabled: !!fx.enab,
|
|
@@ -842,11 +866,11 @@ function serializeFxObject(stroke) {
|
|
|
842
866
|
function serializeEffects(e, log, multi) {
|
|
843
867
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
|
|
844
868
|
var info = multi ? {
|
|
845
|
-
'Scl ':
|
|
869
|
+
'Scl ': unitsPercentF((_a = e.scale) !== null && _a !== void 0 ? _a : 1),
|
|
846
870
|
masterFXSwitch: !e.disabled,
|
|
847
871
|
} : {
|
|
848
872
|
masterFXSwitch: !e.disabled,
|
|
849
|
-
'Scl ':
|
|
873
|
+
'Scl ': unitsPercentF((_b = e.scale) !== null && _b !== void 0 ? _b : 1),
|
|
850
874
|
};
|
|
851
875
|
var arrayKeys = ['dropShadow', 'innerShadow', 'solidFill', 'gradientOverlay', 'stroke'];
|
|
852
876
|
for (var _i = 0, arrayKeys_1 = arrayKeys; _i < arrayKeys_1.length; _i++) {
|
|
@@ -896,6 +920,9 @@ function serializeEffects(e, log, multi) {
|
|
|
896
920
|
info.numModifyingFX++;
|
|
897
921
|
}
|
|
898
922
|
}
|
|
923
|
+
else if (value.enabled) {
|
|
924
|
+
info.numModifyingFX++;
|
|
925
|
+
}
|
|
899
926
|
}
|
|
900
927
|
}
|
|
901
928
|
return info;
|
|
@@ -1285,7 +1312,7 @@ function serializeEffectObject(obj, objName, reportErrors) {
|
|
|
1285
1312
|
result.sdwO = unitsPercent(val);
|
|
1286
1313
|
break;
|
|
1287
1314
|
case 'angle':
|
|
1288
|
-
if (objName === 'gradientOverlay') {
|
|
1315
|
+
if (objName === 'gradientOverlay' || objName === 'patternFill') {
|
|
1289
1316
|
result.Angl = unitsAngle(val);
|
|
1290
1317
|
}
|
|
1291
1318
|
else {
|
|
@@ -1555,7 +1582,7 @@ function serializeColor(color) {
|
|
|
1555
1582
|
return { _name: '', _classID: 'RGBC', 'Rd ': color.r || 0, 'Grn ': color.g || 0, 'Bl ': color.b || 0 };
|
|
1556
1583
|
}
|
|
1557
1584
|
else if ('fr' in color) {
|
|
1558
|
-
return { _name: '', _classID: '
|
|
1585
|
+
return { _name: '', _classID: 'RGBC', redFloat: color.fr, greenFloat: color.fg, blueFloat: color.fb };
|
|
1559
1586
|
}
|
|
1560
1587
|
else if ('h' in color) {
|
|
1561
1588
|
return { _name: '', _classID: 'HSBC', 'H ': unitsAngle(color.h * 360), Strt: color.s || 0, Brgh: color.b || 0 };
|