增加中文转拼音- mac

This commit is contained in:
onvia 2023-07-27 15:04:13 +08:00
parent dd0373c362
commit 1840eab0d3
287 changed files with 61358 additions and 56240 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1,74 +0,0 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ "master" ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ "master" ]
schedule:
- cron: '24 5 * * 4'
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write
strategy:
fail-fast: false
matrix:
language: [ 'javascript' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://aka.ms/codeql-docs/language-support
steps:
- name: Checkout repository
uses: actions/checkout@v3
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v2
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# Details on CodeQL's query packs refer to : https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
# queries: security-extended,security-and-quality
# Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v2
# Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
# If the Autobuild fails above, remove it and uncomment the following three lines.
# modify them (or add more) to build your code if your project, please refer to the EXAMPLE below for guidance.
# - run: |
# echo "Run, Build Application using script"
# ./location_of_script_within_repo/buildscript.sh
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"

View File

@ -1,8 +1,5 @@
# node-pre-gyp changelog # node-pre-gyp changelog
## 1.0.11
- Fixes dependabot alert [CVE-2021-44906](https://nvd.nist.gov/vuln/detail/CVE-2021-44906)
## 1.0.10 ## 1.0.10
- Upgraded minimist to 1.2.6 to address dependabot alert [CVE-2021-44906](https://nvd.nist.gov/vuln/detail/CVE-2021-44906) - Upgraded minimist to 1.2.6 to address dependabot alert [CVE-2021-44906](https://nvd.nist.gov/vuln/detail/CVE-2021-44906)

View File

@ -1,7 +1,7 @@
{ {
"name": "@mapbox/node-pre-gyp", "name": "@mapbox/node-pre-gyp",
"description": "Node.js native addon binary install tool", "description": "Node.js native addon binary install tool",
"version": "1.0.11", "version": "1.0.10",
"keywords": [ "keywords": [
"native", "native",
"addon", "addon",

View File

@ -1,18 +1,5 @@
# Changelog # Changelog
## v15.3.0
- Added support for smart layer puppet filter (`placedLayer.filter`)
## v15.2.0
- Added handling missing `font` in text layer style by assuming first font on the list
## v15.1.0
- Added support for float color in effects, new color type was added
```ts
export type FRGB = { fr: number; fg: number; fb: number; }; // values from 0 to 1 (can be above 1)
```
- Changed `time` field on `LinkedFile` from `Date` to `string` type
## v15.0.0 ## v15.0.0
- Added support for frame and timeline animations - Added support for frame and timeline animations

View File

@ -686,12 +686,11 @@ Many fields in PSD file support passing color in different color formats (RGBA,
```ts ```ts
type RGBA = { r: number; g: number; b: number; a: number; }; // values from 0 to 255 type RGBA = { r: number; g: number; b: number; a: number; }; // values from 0 to 255
type RGB = { r: number; g: number; b: number; }; // values from 0 to 255 type RGB = { r: number; g: number; b: number; }; // values from 0 to 255
type FRGB = { fr: number; fg: number; fb: number; }; // values from 0 to 1 (can be above 1)
type HSB = { h: number; s: number; b: number; }; // values from 0 to 1 type HSB = { h: number; s: number; b: number; }; // values from 0 to 1
type CMYK = { c: number; m: number; y: number; k: number; }; // values from 0 to 255 type CMYK = { c: number; m: number; y: number; k: number; }; // values from 0 to 255
type LAB = { l: number; a: number; b: number; }; // values `l` from 0 to 1; `a` and `b` from -1 to 1 type LAB = { l: number; a: number; b: number; }; // values `l` from 0 to 1; `a` and `b` from -1 to 1
type Grayscale = { k: number }; // values from 0 to 255 type Grayscale = { k: number }; // values from 0 to 255
type Color = RGBA | RGB | FRGB | HSB | CMYK | LAB | Grayscale; type Color = RGBA | RGB | HSB | CMYK | LAB | Grayscale;
``` ```
When you want to set field with a `Color` type, it's pretty straightforward, you can just choose any of the formats you like and set it on the field: When you want to set field with a `Color` type, it's pretty straightforward, you can just choose any of the formats you like and set it on the field:
@ -713,8 +712,6 @@ if ('l' in color) {
// color is Grayscale // color is Grayscale
} else if ('a' in color) { } else if ('a' in color) {
// color is RGBA // color is RGBA
} else if ('rf' in color) {
// color is FRGB
} else { } else {
// color is RGB // color is RGB
} }

View File

@ -1,3 +1,5 @@
- remove gulp
- can we remove sectionDivider property ? - can we remove sectionDivider property ?
- can we remove nameSource property ? - can we remove nameSource property ?

View File

@ -1,3 +0,0 @@
const fs = require('fs');
fs.rmSync('dist', { recursive: true, force: true });
fs.rmSync('dist-es', { recursive: true, force: true });

View File

@ -1,132 +1,132 @@
import { BlendMode, PatternInfo } from './psd'; import { BlendMode, PatternInfo } from './psd';
export interface Abr { export interface Abr {
brushes: Brush[]; brushes: Brush[];
samples: SampleInfo[]; samples: SampleInfo[];
patterns: PatternInfo[]; patterns: PatternInfo[];
} }
export interface SampleInfo { export interface SampleInfo {
id: string; id: string;
bounds: { bounds: {
x: number; x: number;
y: number; y: number;
w: number; w: number;
h: number; h: number;
}; };
alpha: Uint8Array; alpha: Uint8Array;
} }
export interface BrushDynamics { export interface BrushDynamics {
control: 'off' | 'fade' | 'pen pressure' | 'pen tilt' | 'stylus wheel' | 'initial direction' | 'direction' | 'initial rotation' | 'rotation'; control: 'off' | 'fade' | 'pen pressure' | 'pen tilt' | 'stylus wheel' | 'initial direction' | 'direction' | 'initial rotation' | 'rotation';
steps: number; steps: number;
jitter: number; jitter: number;
minimum: number; minimum: number;
} }
export interface BrushShape { export interface BrushShape {
name?: string; name?: string;
size: number; size: number;
angle: number; angle: number;
roundness: number; roundness: number;
hardness?: number; hardness?: number;
spacingOn: boolean; spacingOn: boolean;
spacing: number; spacing: number;
flipX: boolean; flipX: boolean;
flipY: boolean; flipY: boolean;
sampledData?: string; sampledData?: string;
} }
export interface Brush { export interface Brush {
name: string; name: string;
shape: BrushShape; shape: BrushShape;
shapeDynamics?: { shapeDynamics?: {
sizeDynamics: BrushDynamics; sizeDynamics: BrushDynamics;
minimumDiameter: number; minimumDiameter: number;
tiltScale: number; tiltScale: number;
angleDynamics: BrushDynamics; angleDynamics: BrushDynamics;
roundnessDynamics: BrushDynamics; roundnessDynamics: BrushDynamics;
minimumRoundness: number; minimumRoundness: number;
flipX: boolean; flipX: boolean;
flipY: boolean; flipY: boolean;
brushProjection: boolean; brushProjection: boolean;
}; };
scatter?: { scatter?: {
bothAxes: boolean; bothAxes: boolean;
scatterDynamics: BrushDynamics; scatterDynamics: BrushDynamics;
countDynamics: BrushDynamics; countDynamics: BrushDynamics;
count: number; count: number;
}; };
texture?: { texture?: {
id: string; id: string;
name: string; name: string;
invert: boolean; invert: boolean;
scale: number; scale: number;
brightness: number; brightness: number;
contrast: number; contrast: number;
blendMode: BlendMode; blendMode: BlendMode;
depth: number; depth: number;
depthMinimum: number; depthMinimum: number;
depthDynamics: BrushDynamics; depthDynamics: BrushDynamics;
}; };
dualBrush?: { dualBrush?: {
flip: boolean; flip: boolean;
shape: BrushShape; shape: BrushShape;
blendMode: BlendMode; blendMode: BlendMode;
useScatter: boolean; useScatter: boolean;
spacing: number; spacing: number;
count: number; count: number;
bothAxes: boolean; bothAxes: boolean;
countDynamics: BrushDynamics; countDynamics: BrushDynamics;
scatterDynamics: BrushDynamics; scatterDynamics: BrushDynamics;
}; };
colorDynamics?: { colorDynamics?: {
foregroundBackground: BrushDynamics; foregroundBackground: BrushDynamics;
hue: number; hue: number;
saturation: number; saturation: number;
brightness: number; brightness: number;
purity: number; purity: number;
perTip: boolean; perTip: boolean;
}; };
transfer?: { transfer?: {
flowDynamics: BrushDynamics; flowDynamics: BrushDynamics;
opacityDynamics: BrushDynamics; opacityDynamics: BrushDynamics;
wetnessDynamics: BrushDynamics; wetnessDynamics: BrushDynamics;
mixDynamics: BrushDynamics; mixDynamics: BrushDynamics;
}; };
brushPose?: { brushPose?: {
overrideAngle: boolean; overrideAngle: boolean;
overrideTiltX: boolean; overrideTiltX: boolean;
overrideTiltY: boolean; overrideTiltY: boolean;
overridePressure: boolean; overridePressure: boolean;
pressure: number; pressure: number;
tiltX: number; tiltX: number;
tiltY: number; tiltY: number;
angle: number; angle: number;
}; };
noise: boolean; noise: boolean;
wetEdges: boolean; wetEdges: boolean;
protectTexture?: boolean; protectTexture?: boolean;
spacing: number; spacing: number;
brushGroup?: undefined; brushGroup?: undefined;
interpretation?: boolean; interpretation?: boolean;
useBrushSize: boolean; useBrushSize: boolean;
toolOptions?: { toolOptions?: {
brushPreset: boolean; brushPreset: boolean;
flow: number; flow: number;
smooth: number; smooth: number;
mode: BlendMode; mode: BlendMode;
opacity: number; opacity: number;
smoothing: boolean; smoothing: boolean;
smoothingValue: number; smoothingValue: number;
smoothingRadiusMode: boolean; smoothingRadiusMode: boolean;
smoothingCatchup: boolean; smoothingCatchup: boolean;
smoothingCatchupAtEnd: boolean; smoothingCatchupAtEnd: boolean;
smoothingZoomCompensation: boolean; smoothingZoomCompensation: boolean;
pressureSmoothing: boolean; pressureSmoothing: boolean;
usePressureOverridesSize: boolean; usePressureOverridesSize: boolean;
usePressureOverridesOpacity: boolean; usePressureOverridesOpacity: boolean;
useLegacy: boolean; useLegacy: boolean;
flowDynamics?: BrushDynamics; flowDynamics?: BrushDynamics;
opacityDynamics?: BrushDynamics; opacityDynamics?: BrushDynamics;
sizeDynamics?: BrushDynamics; sizeDynamics?: BrushDynamics;
}; };
} }
export declare function readAbr(buffer: ArrayBufferView, options?: { export declare function readAbr(buffer: ArrayBufferView, options?: {
logMissingFeatures?: boolean; logMissingFeatures?: boolean;
}): Abr; }): Abr;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,25 +1,25 @@
import { LayerAdditionalInfo, BezierPath, Psd, ReadOptions, WriteOptions, BooleanOperation, LayerEffectsInfo, LayerVectorMask } from './psd'; import { LayerAdditionalInfo, BezierPath, Psd, ReadOptions, WriteOptions, BooleanOperation, LayerEffectsInfo, LayerVectorMask } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export interface ExtendedWriteOptions extends WriteOptions { export interface ExtendedWriteOptions extends WriteOptions {
layerIds: Set<number>; layerIds: Set<number>;
layerToId: Map<any, number>; layerToId: Map<any, number>;
} }
type HasMethod = (target: LayerAdditionalInfo) => boolean; declare type HasMethod = (target: LayerAdditionalInfo) => boolean;
type ReadMethod = (reader: PsdReader, target: LayerAdditionalInfo, left: () => number, psd: Psd, options: ReadOptions) => void; declare type ReadMethod = (reader: PsdReader, target: LayerAdditionalInfo, left: () => number, psd: Psd, options: ReadOptions) => void;
type WriteMethod = (writer: PsdWriter, target: LayerAdditionalInfo, psd: Psd, options: ExtendedWriteOptions) => void; declare type WriteMethod = (writer: PsdWriter, target: LayerAdditionalInfo, psd: Psd, options: ExtendedWriteOptions) => void;
export interface InfoHandler { export interface InfoHandler {
key: string; key: string;
has: HasMethod; has: HasMethod;
read: ReadMethod; read: ReadMethod;
write: WriteMethod; write: WriteMethod;
} }
export declare const infoHandlers: InfoHandler[]; export declare const infoHandlers: InfoHandler[];
export declare const infoHandlersMap: { export declare const infoHandlersMap: {
[key: string]: InfoHandler; [key: string]: InfoHandler;
}; };
export declare function readBezierKnot(reader: PsdReader, width: number, height: number): number[]; export declare function readBezierKnot(reader: PsdReader, width: number, height: number): number[];
export declare const booleanOperations: BooleanOperation[]; export declare const booleanOperations: BooleanOperation[];
export declare function readVectorMask(reader: PsdReader, vectorMask: LayerVectorMask, width: number, height: number, size: number): BezierPath[]; export declare function readVectorMask(reader: PsdReader, vectorMask: LayerVectorMask, width: number, height: number, size: number): BezierPath[];
export declare function hasMultiEffects(effects: LayerEffectsInfo): boolean; export declare function hasMultiEffects(effects: LayerEffectsInfo): boolean;
export {}; export {};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,10 +1,10 @@
import { LayerVectorMask } from './psd'; import { LayerVectorMask } from './psd';
export interface Csh { export interface Csh {
shapes: (LayerVectorMask & { shapes: (LayerVectorMask & {
name: string; name: string;
id: string; id: string;
width: number; width: number;
height: number; height: number;
})[]; })[];
} }
export declare function readCsh(buffer: ArrayBufferView): Csh; export declare function readCsh(buffer: ArrayBufferView): Csh;

View File

@ -1,44 +1,45 @@
var __assign = (this && this.__assign) || function () { var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) { __assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) { for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i]; s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p]; t[p] = s[p];
} }
return t; return t;
}; };
return __assign.apply(this, arguments); return __assign.apply(this, arguments);
}; };
import { readVectorMask } from './additionalInfo'; import { readVectorMask } from './additionalInfo';
import { readUint32, checkSignature, createReader, readPascalString, readUnicodeString } from './psdReader'; import { readUint32, checkSignature, createReader, readPascalString, readUnicodeString } from './psdReader';
export function readCsh(buffer) { export function readCsh(buffer) {
var reader = createReader(buffer.buffer, buffer.byteOffset, buffer.byteLength); var reader = createReader(buffer.buffer, buffer.byteOffset, buffer.byteLength);
var csh = { shapes: [] }; var csh = { shapes: [] };
checkSignature(reader, 'cush'); checkSignature(reader, 'cush');
if (readUint32(reader) !== 2) if (readUint32(reader) !== 2)
throw new Error('Invalid version'); throw new Error('Invalid version');
var count = readUint32(reader); var count = readUint32(reader);
for (var i = 0; i < count; i++) { for (var i = 0; i < count; i++) {
var name_1 = readUnicodeString(reader); var name_1 = readUnicodeString(reader);
while (reader.offset % 4) while (reader.offset % 4)
reader.offset++; // pad to 4byte bounds reader.offset++; // pad to 4byte bounds
if (readUint32(reader) !== 1) if (readUint32(reader) !== 1)
throw new Error('Invalid shape version'); throw new Error('Invalid shape version');
var size = readUint32(reader); var size = readUint32(reader);
var end = reader.offset + size; var end = reader.offset + size;
var id = readPascalString(reader, 1); var id = readPascalString(reader, 1);
// this might not be correct ??? // this might not be correct ???
var y1 = readUint32(reader); var y1 = readUint32(reader);
var x1 = readUint32(reader); var x1 = readUint32(reader);
var y2 = readUint32(reader); var y2 = readUint32(reader);
var x2 = readUint32(reader); var x2 = readUint32(reader);
var width = x2 - x1; var width = x2 - x1;
var height = y2 - y1; var height = y2 - y1;
var mask = { paths: [] }; var mask = { paths: [] };
readVectorMask(reader, mask, width, height, end - reader.offset); readVectorMask(reader, mask, width, height, end - reader.offset);
csh.shapes.push(__assign({ name: name_1, id: id, width: width, height: height }, mask)); csh.shapes.push(__assign({ name: name_1, id: id, width: width, height: height }, mask));
reader.offset = end; reader.offset = end;
} }
return csh; return csh;
} }
//# sourceMappingURL=csh.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUVsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBRSxZQUFZLEVBQUUsZ0JBQWdCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFXNUcsTUFBTSxVQUFVLE9BQU8sQ0FBQyxNQUF1QjtJQUM5QyxJQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqRixJQUFNLEdBQUcsR0FBUSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQztJQUVoQyxjQUFjLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLElBQUksVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGlCQUFpQixDQUFDLENBQUM7SUFDakUsSUFBTSxLQUFLLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBRWpDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxFQUFFLEVBQUU7UUFDL0IsSUFBTSxNQUFJLEdBQUcsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDdkMsT0FBTyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUM7WUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxzQkFBc0I7UUFDakUsSUFBSSxVQUFVLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztZQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUN2RSxJQUFNLElBQUksR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDaEMsSUFBTSxHQUFHLEdBQUcsTUFBTSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDakMsSUFBTSxFQUFFLEdBQUcsZ0JBQWdCLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLGdDQUFnQztRQUNoQyxJQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsSUFBTSxFQUFFLEdBQUcsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQU0sRUFBRSxHQUFHLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixJQUFNLEVBQUUsR0FBRyxVQUFVLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsSUFBTSxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQU0sSUFBSSxHQUFvQixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUM1QyxjQUFjLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQUcsSUFBSSxRQUFBLEVBQUUsRUFBRSxJQUFBLEVBQUUsS0FBSyxPQUFBLEVBQUUsTUFBTSxRQUFBLElBQUssSUFBSSxFQUFHLENBQUM7UUFFdEQsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7S0FDcEI7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNaLENBQUMiLCJmaWxlIjoiY3NoLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmVhZFZlY3Rvck1hc2sgfSBmcm9tICcuL2FkZGl0aW9uYWxJbmZvJztcclxuaW1wb3J0IHsgTGF5ZXJWZWN0b3JNYXNrIH0gZnJvbSAnLi9wc2QnO1xyXG5pbXBvcnQgeyByZWFkVWludDMyLCBjaGVja1NpZ25hdHVyZSwgY3JlYXRlUmVhZGVyLCByZWFkUGFzY2FsU3RyaW5nLCByZWFkVW5pY29kZVN0cmluZyB9IGZyb20gJy4vcHNkUmVhZGVyJztcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ3NoIHtcclxuXHRzaGFwZXM6IChMYXllclZlY3Rvck1hc2sgJiB7XHJcblx0XHRuYW1lOiBzdHJpbmc7XHJcblx0XHRpZDogc3RyaW5nO1xyXG5cdFx0d2lkdGg6IG51bWJlcjtcclxuXHRcdGhlaWdodDogbnVtYmVyO1xyXG5cdH0pW107XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiByZWFkQ3NoKGJ1ZmZlcjogQXJyYXlCdWZmZXJWaWV3KTogQ3NoIHtcclxuXHRjb25zdCByZWFkZXIgPSBjcmVhdGVSZWFkZXIoYnVmZmVyLmJ1ZmZlciwgYnVmZmVyLmJ5dGVPZmZzZXQsIGJ1ZmZlci5ieXRlTGVuZ3RoKTtcclxuXHRjb25zdCBjc2g6IENzaCA9IHsgc2hhcGVzOiBbXSB9O1xyXG5cclxuXHRjaGVja1NpZ25hdHVyZShyZWFkZXIsICdjdXNoJyk7XHJcblx0aWYgKHJlYWRVaW50MzIocmVhZGVyKSAhPT0gMikgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHZlcnNpb24nKTtcclxuXHRjb25zdCBjb3VudCA9IHJlYWRVaW50MzIocmVhZGVyKTtcclxuXHJcblx0Zm9yIChsZXQgaSA9IDA7IGkgPCBjb3VudDsgaSsrKSB7XHJcblx0XHRjb25zdCBuYW1lID0gcmVhZFVuaWNvZGVTdHJpbmcocmVhZGVyKTtcclxuXHRcdHdoaWxlIChyZWFkZXIub2Zmc2V0ICUgNCkgcmVhZGVyLm9mZnNldCsrOyAvLyBwYWQgdG8gNGJ5dGUgYm91bmRzXHJcblx0XHRpZiAocmVhZFVpbnQzMihyZWFkZXIpICE9PSAxKSB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgc2hhcGUgdmVyc2lvbicpO1xyXG5cdFx0Y29uc3Qgc2l6ZSA9IHJlYWRVaW50MzIocmVhZGVyKTtcclxuXHRcdGNvbnN0IGVuZCA9IHJlYWRlci5vZmZzZXQgKyBzaXplO1xyXG5cdFx0Y29uc3QgaWQgPSByZWFkUGFzY2FsU3RyaW5nKHJlYWRlciwgMSk7XHJcblx0XHQvLyB0aGlzIG1pZ2h0IG5vdCBiZSBjb3JyZWN0ID8/P1xyXG5cdFx0Y29uc3QgeTEgPSByZWFkVWludDMyKHJlYWRlcik7XHJcblx0XHRjb25zdCB4MSA9IHJlYWRVaW50MzIocmVhZGVyKTtcclxuXHRcdGNvbnN0IHkyID0gcmVhZFVpbnQzMihyZWFkZXIpO1xyXG5cdFx0Y29uc3QgeDIgPSByZWFkVWludDMyKHJlYWRlcik7XHJcblx0XHRjb25zdCB3aWR0aCA9IHgyIC0geDE7XHJcblx0XHRjb25zdCBoZWlnaHQgPSB5MiAtIHkxO1xyXG5cdFx0Y29uc3QgbWFzazogTGF5ZXJWZWN0b3JNYXNrID0geyBwYXRoczogW10gfTtcclxuXHRcdHJlYWRWZWN0b3JNYXNrKHJlYWRlciwgbWFzaywgd2lkdGgsIGhlaWdodCwgZW5kIC0gcmVhZGVyLm9mZnNldCk7XHJcblx0XHRjc2guc2hhcGVzLnB1c2goeyBuYW1lLCBpZCwgd2lkdGgsIGhlaWdodCwgLi4ubWFzayB9KTtcclxuXHJcblx0XHRyZWFkZXIub2Zmc2V0ID0gZW5kO1xyXG5cdH1cclxuXHJcblx0cmV0dXJuIGNzaDtcclxufVxyXG4iXSwic291cmNlUm9vdCI6IkM6XFxQcm9qZWN0c1xcZ2l0aHViXFxhZy1wc2RcXHNyYyJ9

View File

@ -1 +0,0 @@
{"version":3,"file":"csh.js","sourceRoot":"../src/","sources":["csh.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAW5G,MAAM,UAAU,OAAO,CAAC,MAAuB;IAC9C,IAAM,MAAM,GAAG,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACjF,IAAM,GAAG,GAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAEhC,cAAc,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjE,IAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAM,MAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,sBAAsB;QACjE,IAAI,UAAU,CAAC,MAAM,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACvE,IAAM,IAAI,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAChC,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QACjC,IAAM,EAAE,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvC,gCAAgC;QAChC,IAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,KAAK,GAAG,EAAE,GAAG,EAAE,CAAC;QACtB,IAAM,MAAM,GAAG,EAAE,GAAG,EAAE,CAAC;QACvB,IAAM,IAAI,GAAoB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5C,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,IAAI,YAAG,IAAI,QAAA,EAAE,EAAE,IAAA,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,IAAK,IAAI,EAAG,CAAC;QAEtD,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC;KACpB;IAED,OAAO,GAAG,CAAC;AACZ,CAAC"}

View File

@ -1,415 +1,390 @@
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'; 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';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export declare function setLogErrors(value: boolean): void; export declare function setLogErrors(value: boolean): void;
export declare function readAsciiStringOrClassId(reader: PsdReader): string; export declare function readAsciiStringOrClassId(reader: PsdReader): string;
export declare function readDescriptorStructure(reader: PsdReader): any; export declare function readDescriptorStructure(reader: PsdReader): any;
export declare function writeDescriptorStructure(writer: PsdWriter, name: string, classId: string, value: any, root: string): void; export declare function writeDescriptorStructure(writer: PsdWriter, name: string, classId: string, value: any, root: string): void;
export declare function readVersionAndDescriptor(reader: PsdReader): any; export declare function readVersionAndDescriptor(reader: PsdReader): any;
export declare function writeVersionAndDescriptor(writer: PsdWriter, name: string, classID: string, descriptor: any, root?: string): void; export declare function writeVersionAndDescriptor(writer: PsdWriter, name: string, classID: string, descriptor: any, root?: string): void;
export type DescriptorUnits = 'Angle' | 'Density' | 'Distance' | 'None' | 'Percent' | 'Pixels' | 'Millimeters' | 'Points' | 'Picas' | 'Inches' | 'Centimeters'; export declare type DescriptorUnits = 'Angle' | 'Density' | 'Distance' | 'None' | 'Percent' | 'Pixels' | 'Millimeters' | 'Points' | 'Picas' | 'Inches' | 'Centimeters';
export interface DescriptorUnitsValue { export interface DescriptorUnitsValue {
units: DescriptorUnits; units: DescriptorUnits;
value: number; value: number;
} }
export type DescriptorColor = { export declare type DescriptorColor = {
'Rd ': number; 'Rd ': number;
'Grn ': number; 'Grn ': number;
'Bl ': number; 'Bl ': number;
} | { } | {
'H ': DescriptorUnitsValue; 'H ': DescriptorUnitsValue;
Strt: number; Strt: number;
Brgh: number; Brgh: number;
} | { } | {
'Cyn ': number; 'Cyn ': number;
Mgnt: number; Mgnt: number;
'Ylw ': number; 'Ylw ': number;
Blck: number; Blck: number;
} | { } | {
'Gry ': number; 'Gry ': number;
} | { } | {
Lmnc: number; Lmnc: number;
'A ': number; 'A ': number;
'B ': number; 'B ': number;
} | { };
redFloat: number; export interface DesciptorPattern {
greenFloat: number; 'Nm ': string;
blueFloat: number; Idnt: string;
}; }
export interface DesciptorPattern { export declare type DesciptorGradient = {
'Nm ': string; 'Nm ': string;
Idnt: string; GrdF: 'GrdF.CstS';
} Intr: number;
export type DesciptorGradient = { Clrs: {
'Nm ': string; 'Clr ': DescriptorColor;
GrdF: 'GrdF.CstS'; Type: 'Clry.UsrS';
Intr: number; Lctn: number;
Clrs: { Mdpn: number;
'Clr ': DescriptorColor; }[];
Type: 'Clry.UsrS'; Trns: {
Lctn: number; Opct: DescriptorUnitsValue;
Mdpn: number; Lctn: number;
}[]; Mdpn: number;
Trns: { }[];
Opct: DescriptorUnitsValue; } | {
Lctn: number; GrdF: 'GrdF.ClNs';
Mdpn: number; Smth: number;
}[]; 'Nm ': string;
} | { ClrS: string;
GrdF: 'GrdF.ClNs'; RndS: number;
Smth: number; VctC?: boolean;
'Nm ': string; ShTr?: boolean;
ClrS: string; 'Mnm ': number[];
RndS: number; 'Mxm ': number[];
VctC?: boolean; };
ShTr?: boolean; export interface DescriptorColorContent {
'Mnm ': number[]; 'Clr ': DescriptorColor;
'Mxm ': number[]; }
}; export interface DescriptorGradientContent {
export interface DescriptorColorContent { Grad: DesciptorGradient;
'Clr ': DescriptorColor; Type: string;
} Dthr?: boolean;
export interface DescriptorGradientContent { Rvrs?: boolean;
Grad: DesciptorGradient; Angl?: DescriptorUnitsValue;
Type: string; 'Scl '?: DescriptorUnitsValue;
Dthr?: boolean; Algn?: boolean;
Rvrs?: boolean; Ofst?: {
Angl?: DescriptorUnitsValue; Hrzn: DescriptorUnitsValue;
'Scl '?: DescriptorUnitsValue; Vrtc: DescriptorUnitsValue;
Algn?: boolean; };
Ofst?: { }
Hrzn: DescriptorUnitsValue; export interface DescriptorPatternContent {
Vrtc: DescriptorUnitsValue; Ptrn: DesciptorPattern;
}; Lnkd?: boolean;
} phase?: {
export interface DescriptorPatternContent { Hrzn: number;
Ptrn: DesciptorPattern; Vrtc: number;
Lnkd?: boolean; };
phase?: { }
Hrzn: number; export declare type DescriptorVectorContent = DescriptorColorContent | DescriptorGradientContent | DescriptorPatternContent;
Vrtc: number; export interface StrokeDescriptor {
}; strokeStyleVersion: number;
} strokeEnabled: boolean;
export type DescriptorVectorContent = DescriptorColorContent | DescriptorGradientContent | DescriptorPatternContent; fillEnabled: boolean;
export interface StrokeDescriptor { strokeStyleLineWidth: DescriptorUnitsValue;
strokeStyleVersion: number; strokeStyleLineDashOffset: DescriptorUnitsValue;
strokeEnabled: boolean; strokeStyleMiterLimit: number;
fillEnabled: boolean; strokeStyleLineCapType: string;
strokeStyleLineWidth: DescriptorUnitsValue; strokeStyleLineJoinType: string;
strokeStyleLineDashOffset: DescriptorUnitsValue; strokeStyleLineAlignment: string;
strokeStyleMiterLimit: number; strokeStyleScaleLock: boolean;
strokeStyleLineCapType: string; strokeStyleStrokeAdjust: boolean;
strokeStyleLineJoinType: string; strokeStyleLineDashSet: DescriptorUnitsValue[];
strokeStyleLineAlignment: string; strokeStyleBlendMode: string;
strokeStyleScaleLock: boolean; strokeStyleOpacity: DescriptorUnitsValue;
strokeStyleStrokeAdjust: boolean; strokeStyleContent: DescriptorVectorContent;
strokeStyleLineDashSet: DescriptorUnitsValue[]; strokeStyleResolution: number;
strokeStyleBlendMode: string; }
strokeStyleOpacity: DescriptorUnitsValue; export interface TextDescriptor {
strokeStyleContent: DescriptorVectorContent; 'Txt ': string;
strokeStyleResolution: number; textGridding: string;
} Ornt: string;
export interface TextDescriptor { AntA: string;
'Txt ': string; TextIndex: number;
textGridding: string; EngineData?: Uint8Array;
Ornt: string; }
AntA: string; export interface WarpDescriptor {
TextIndex: number; warpStyle: string;
EngineData?: Uint8Array; warpValue: number;
} warpPerspective: number;
export interface WarpDescriptor { warpPerspectiveOther: number;
warpStyle: string; warpRotate: string;
warpValue?: number; bounds?: {
warpValues?: number[]; 'Top ': DescriptorUnitsValue;
warpPerspective: number; Left: DescriptorUnitsValue;
warpPerspectiveOther: number; Btom: DescriptorUnitsValue;
warpRotate: string; Rght: DescriptorUnitsValue;
bounds?: { };
'Top ': DescriptorUnitsValue; uOrder: number;
Left: DescriptorUnitsValue; vOrder: number;
Btom: DescriptorUnitsValue; customEnvelopeWarp?: {
Rght: DescriptorUnitsValue; meshPoints: {
}; type: 'Hrzn' | 'Vrtc';
uOrder: number; values: number[];
vOrder: number; }[];
customEnvelopeWarp?: { };
meshPoints: { }
type: 'Hrzn' | 'Vrtc'; export interface QuiltWarpDescriptor extends WarpDescriptor {
values: number[]; deformNumRows: number;
}[]; deformNumCols: number;
}; customEnvelopeWarp: {
} quiltSliceX: {
export interface QuiltWarpDescriptor extends WarpDescriptor { type: 'quiltSliceX';
deformNumRows: number; values: number[];
deformNumCols: number; }[];
customEnvelopeWarp: { quiltSliceY: {
quiltSliceX: { type: 'quiltSliceY';
type: 'quiltSliceX'; values: number[];
values: number[]; }[];
}[]; meshPoints: {
quiltSliceY: { type: 'Hrzn' | 'Vrtc';
type: 'quiltSliceY'; values: number[];
values: number[]; }[];
}[]; };
meshPoints: { }
type: 'Hrzn' | 'Vrtc'; export interface FractionDescriptor {
values: number[]; numerator: number;
}[]; denominator: number;
}; }
} export interface HrznVrtcDescriptor {
export interface FractionDescriptor { Hrzn: number;
numerator: number; Vrtc: number;
denominator: number; }
} export interface FrameDescriptor {
export interface HrznVrtcDescriptor { FrLs: number[];
Hrzn: number; enab?: boolean;
Vrtc: number; IMsk?: {
} Ofst: HrznVrtcDescriptor;
export interface FrameDescriptor { };
FrLs: number[]; VMsk?: {
enab?: boolean; Ofst: HrznVrtcDescriptor;
IMsk?: { };
Ofst: HrznVrtcDescriptor; Ofst?: HrznVrtcDescriptor;
}; FXRf?: HrznVrtcDescriptor;
VMsk?: { Lefx?: Lfx2Descriptor;
Ofst: HrznVrtcDescriptor; blendOptions?: {
}; Opct: DescriptorUnitsValue;
Ofst?: HrznVrtcDescriptor; };
FXRf?: HrznVrtcDescriptor; }
Lefx?: Lfx2Descriptor; export interface FrameListDescriptor {
blendOptions?: { LaID: number;
Opct: DescriptorUnitsValue; LaSt: FrameDescriptor[];
}; }
} export declare function horzVrtcToXY(hv: HrznVrtcDescriptor): {
export interface FrameListDescriptor { x: number;
LaID: number; y: number;
LaSt: FrameDescriptor[]; };
} export declare function xyToHorzVrtc(xy: {
export declare function horzVrtcToXY(hv: HrznVrtcDescriptor): { x: number;
x: number; y: number;
y: number; }): HrznVrtcDescriptor;
}; export declare type TimelineAnimKeyDescriptor = {
export declare function xyToHorzVrtc(xy: { Type: 'keyType.Opct';
x: number; Opct: DescriptorUnitsValue;
y: number; } | {
}): HrznVrtcDescriptor; Type: 'keyType.Trnf';
export type TimelineAnimKeyDescriptor = { 'Scl ': HrznVrtcDescriptor;
Type: 'keyType.Opct'; Skew: HrznVrtcDescriptor;
Opct: DescriptorUnitsValue; rotation: number;
} | { translation: HrznVrtcDescriptor;
Type: 'keyType.Trnf'; } | {
'Scl ': HrznVrtcDescriptor; Type: 'keyType.Pstn';
Skew: HrznVrtcDescriptor; Hrzn: number;
rotation: number; Vrtc: number;
translation: HrznVrtcDescriptor; } | {
} | { Type: 'keyType.sheetStyle';
Type: 'keyType.Pstn'; sheetStyle: {
Hrzn: number; Vrsn: number;
Vrtc: number; Lefx?: Lfx2Descriptor;
} | { blendOptions: {};
Type: 'keyType.sheetStyle'; };
sheetStyle: { } | {
Vrsn: number; Type: 'keyType.globalLighting';
Lefx?: Lfx2Descriptor; gblA: number;
blendOptions: {}; globalAltitude: number;
}; };
} | { export interface TimelineKeyDescriptor {
Type: 'keyType.globalLighting'; Vrsn: 1;
gblA: number; animInterpStyle: 'animInterpStyle.Lnr ' | 'animInterpStyle.hold';
globalAltitude: number; time: FractionDescriptor;
}; animKey: TimelineAnimKeyDescriptor;
export interface TimelineKeyDescriptor { selected: boolean;
Vrsn: 1; }
animInterpStyle: 'animInterpStyle.Lnr ' | 'animInterpStyle.hold'; export interface TimelineTrackDescriptor {
time: FractionDescriptor; trackID: 'stdTrackID.globalLightingTrack' | 'stdTrackID.opacityTrack' | 'stdTrackID.styleTrack' | 'stdTrackID.sheetTransformTrack' | 'stdTrackID.sheetPositionTrack';
animKey: TimelineAnimKeyDescriptor; Vrsn: 1;
selected: boolean; enab: boolean;
} Effc: boolean;
export interface TimelineTrackDescriptor { effectParams?: {
trackID: 'stdTrackID.globalLightingTrack' | 'stdTrackID.opacityTrack' | 'stdTrackID.styleTrack' | 'stdTrackID.sheetTransformTrack' | 'stdTrackID.sheetPositionTrack'; keyList: TimelineKeyDescriptor[];
Vrsn: 1; fillCanvas: boolean;
enab: boolean; zoomOrigin: number;
Effc: boolean; };
effectParams?: { keyList: TimelineKeyDescriptor[];
keyList: TimelineKeyDescriptor[]; }
fillCanvas: boolean; export interface TimeScopeDescriptor {
zoomOrigin: number; Vrsn: 1;
}; Strt: FractionDescriptor;
keyList: TimelineKeyDescriptor[]; duration: FractionDescriptor;
} inTime: FractionDescriptor;
export interface TimeScopeDescriptor { outTime: FractionDescriptor;
Vrsn: 1; }
Strt: FractionDescriptor; export interface TimelineDescriptor {
duration: FractionDescriptor; Vrsn: 1;
inTime: FractionDescriptor; timeScope: TimeScopeDescriptor;
outTime: FractionDescriptor; autoScope: boolean;
} audioLevel: number;
export interface TimelineDescriptor { LyrI: number;
Vrsn: 1; trackList?: TimelineTrackDescriptor[];
timeScope: TimeScopeDescriptor; }
autoScope: boolean; export interface EffectDescriptor extends Partial<DescriptorGradientContent>, Partial<DescriptorPatternContent> {
audioLevel: number; enab?: boolean;
LyrI: number; Styl: string;
trackList?: TimelineTrackDescriptor[]; PntT?: string;
} 'Md '?: string;
export interface EffectDescriptor extends Partial<DescriptorGradientContent>, Partial<DescriptorPatternContent> { Opct?: DescriptorUnitsValue;
enab?: boolean; 'Sz '?: DescriptorUnitsValue;
Styl: string; 'Clr '?: DescriptorColor;
PntT?: string; present?: boolean;
'Md '?: string; showInDialog?: boolean;
Opct?: DescriptorUnitsValue; overprint?: boolean;
'Sz '?: DescriptorUnitsValue; }
'Clr '?: DescriptorColor; export interface Lfx2Descriptor {
present?: boolean; 'Scl '?: DescriptorUnitsValue;
showInDialog?: boolean; masterFXSwitch?: boolean;
overprint?: boolean; DrSh?: EffectDescriptor;
} IrSh?: EffectDescriptor;
export interface Lfx2Descriptor { OrGl?: EffectDescriptor;
'Scl '?: DescriptorUnitsValue; IrGl?: EffectDescriptor;
masterFXSwitch?: boolean; ebbl?: EffectDescriptor;
DrSh?: EffectDescriptor; SoFi?: EffectDescriptor;
IrSh?: EffectDescriptor; patternFill?: EffectDescriptor;
OrGl?: EffectDescriptor; GrFl?: EffectDescriptor;
IrGl?: EffectDescriptor; ChFX?: EffectDescriptor;
ebbl?: EffectDescriptor; FrFX?: EffectDescriptor;
SoFi?: EffectDescriptor; }
patternFill?: EffectDescriptor; export interface LmfxDescriptor {
GrFl?: EffectDescriptor; 'Scl '?: DescriptorUnitsValue;
ChFX?: EffectDescriptor; masterFXSwitch?: boolean;
FrFX?: EffectDescriptor; numModifyingFX?: number;
} OrGl?: EffectDescriptor;
export interface LmfxDescriptor { IrGl?: EffectDescriptor;
'Scl '?: DescriptorUnitsValue; ebbl?: EffectDescriptor;
masterFXSwitch?: boolean; ChFX?: EffectDescriptor;
numModifyingFX?: number; dropShadowMulti?: EffectDescriptor[];
OrGl?: EffectDescriptor; innerShadowMulti?: EffectDescriptor[];
IrGl?: EffectDescriptor; solidFillMulti?: EffectDescriptor[];
ebbl?: EffectDescriptor; gradientFillMulti?: EffectDescriptor[];
ChFX?: EffectDescriptor; frameFXMulti?: EffectDescriptor[];
dropShadowMulti?: EffectDescriptor[]; patternFill?: EffectDescriptor;
innerShadowMulti?: EffectDescriptor[]; }
solidFillMulti?: EffectDescriptor[]; export declare function serializeEffects(e: LayerEffectsInfo, log: boolean, multi: boolean): Lfx2Descriptor & LmfxDescriptor;
gradientFillMulti?: EffectDescriptor[]; export declare function parseEffects(info: Lfx2Descriptor & LmfxDescriptor, log: boolean): LayerEffectsInfo;
frameFXMulti?: EffectDescriptor[]; export declare function parseTrackList(trackList: TimelineTrackDescriptor[], logMissingFeatures: boolean): TimelineTrack[];
patternFill?: EffectDescriptor; export declare function serializeTrackList(tracks: TimelineTrack[]): TimelineTrackDescriptor[];
} export declare function parseVectorContent(descriptor: DescriptorVectorContent): VectorContent;
export declare function serializeEffects(e: LayerEffectsInfo, log: boolean, multi: boolean): Lfx2Descriptor & LmfxDescriptor; export declare function serializeVectorContent(content: VectorContent): {
export declare function parseEffects(info: Lfx2Descriptor & LmfxDescriptor, log: boolean): LayerEffectsInfo; descriptor: DescriptorVectorContent;
export declare function parseTrackList(trackList: TimelineTrackDescriptor[], logMissingFeatures: boolean): TimelineTrack[]; key: string;
export declare function serializeTrackList(tracks: TimelineTrack[]): TimelineTrackDescriptor[]; };
export declare function parseVectorContent(descriptor: DescriptorVectorContent): VectorContent; export declare function parseColor(color: DescriptorColor): Color;
export declare function serializeVectorContent(content: VectorContent): { export declare function serializeColor(color: Color | undefined): DescriptorColor;
descriptor: DescriptorVectorContent; export declare function parseAngle(x: DescriptorUnitsValue): number;
key: string; export declare function parsePercent(x: DescriptorUnitsValue | undefined): number;
}; export declare function parsePercentOrAngle(x: DescriptorUnitsValue | undefined): number;
export declare function parseColor(color: DescriptorColor): Color; export declare function parseUnits({ units, value }: DescriptorUnitsValue): UnitsValue;
export declare function serializeColor(color: Color | undefined): DescriptorColor; export declare function parseUnitsOrNumber(value: DescriptorUnitsValue | number, units?: Units): UnitsValue;
export declare function parseAngle(x: DescriptorUnitsValue): number; export declare function parseUnitsToNumber({ units, value }: DescriptorUnitsValue, expectedUnits: string): number;
export declare function parsePercent(x: DescriptorUnitsValue | undefined): number; export declare function unitsAngle(value: number | undefined): DescriptorUnitsValue;
export declare function parsePercentOrAngle(x: DescriptorUnitsValue | undefined): number; export declare function unitsPercent(value: number | undefined): DescriptorUnitsValue;
export declare function parseUnits({ units, value }: DescriptorUnitsValue): UnitsValue; export declare function unitsValue(x: UnitsValue | undefined, key: string): DescriptorUnitsValue;
export declare function parseUnitsOrNumber(value: DescriptorUnitsValue | number, units?: Units): UnitsValue; export declare const textGridding: {
export declare function parseUnitsToNumber({ units, value }: DescriptorUnitsValue, expectedUnits: string): number; decode: (val: string) => TextGridding;
export declare function unitsAngle(value: number | undefined): DescriptorUnitsValue; encode: (val: TextGridding | undefined) => string;
export declare function unitsPercent(value: number | undefined): DescriptorUnitsValue; };
export declare function unitsValue(x: UnitsValue | undefined, key: string): DescriptorUnitsValue; export declare const Ornt: {
export declare const textGridding: { decode: (val: string) => Orientation;
decode: (val: string) => TextGridding; encode: (val: Orientation | undefined) => string;
encode: (val: TextGridding | undefined) => string; };
}; export declare const Annt: {
export declare const Ornt: { decode: (val: string) => AntiAlias;
decode: (val: string) => Orientation; encode: (val: AntiAlias | undefined) => string;
encode: (val: Orientation | undefined) => string; };
}; export declare const warpStyle: {
export declare const Annt: { decode: (val: string) => WarpStyle;
decode: (val: string) => AntiAlias; encode: (val: WarpStyle | undefined) => string;
encode: (val: AntiAlias | undefined) => string; };
}; export declare const BlnM: {
export declare const warpStyle: { decode: (val: string) => BlendMode;
decode: (val: string) => WarpStyle; encode: (val: BlendMode | undefined) => string;
encode: (val: WarpStyle | undefined) => string; };
}; export declare const BESl: {
export declare const BlnM: { decode: (val: string) => BevelStyle;
decode: (val: string) => BlendMode; encode: (val: BevelStyle | undefined) => string;
encode: (val: BlendMode | undefined) => string; };
}; export declare const bvlT: {
export declare const BESl: { decode: (val: string) => BevelTechnique;
decode: (val: string) => BevelStyle; encode: (val: BevelTechnique | undefined) => string;
encode: (val: BevelStyle | undefined) => string; };
}; export declare const BESs: {
export declare const bvlT: { decode: (val: string) => BevelDirection;
decode: (val: string) => BevelTechnique; encode: (val: BevelDirection | undefined) => string;
encode: (val: BevelTechnique | undefined) => string; };
}; export declare const BETE: {
export declare const BESs: { decode: (val: string) => GlowTechnique;
decode: (val: string) => BevelDirection; encode: (val: GlowTechnique | undefined) => string;
encode: (val: BevelDirection | undefined) => string; };
}; export declare const IGSr: {
export declare const BETE: { decode: (val: string) => GlowSource;
decode: (val: string) => GlowTechnique; encode: (val: GlowSource | undefined) => string;
encode: (val: GlowTechnique | undefined) => string; };
}; export declare const GrdT: {
export declare const IGSr: { decode: (val: string) => GradientStyle;
decode: (val: string) => GlowSource; encode: (val: GradientStyle | undefined) => string;
encode: (val: GlowSource | undefined) => string; };
}; export declare const animInterpStyleEnum: {
export declare const GrdT: { decode: (val: string) => TimelineKeyInterpolation;
decode: (val: string) => GradientStyle; encode: (val: TimelineKeyInterpolation | undefined) => string;
encode: (val: GradientStyle | undefined) => string; };
}; export declare const stdTrackID: {
export declare const animInterpStyleEnum: { decode: (val: string) => TimelineTrackType;
decode: (val: string) => TimelineKeyInterpolation; encode: (val: TimelineTrackType | undefined) => string;
encode: (val: TimelineKeyInterpolation | undefined) => string; };
}; export declare const gradientInterpolationMethodType: {
export declare const stdTrackID: { decode: (val: string) => InterpolationMethod;
decode: (val: string) => TimelineTrackType; encode: (val: InterpolationMethod | undefined) => string;
encode: (val: TimelineTrackType | undefined) => string; };
}; export declare const ClrS: {
export declare const gradientInterpolationMethodType: { decode: (val: string) => "rgb" | "hsb" | "lab";
decode: (val: string) => InterpolationMethod; encode: (val: "rgb" | "hsb" | "lab" | undefined) => string;
encode: (val: InterpolationMethod | undefined) => string; };
}; export declare const FStl: {
export declare const ClrS: { decode: (val: string) => "center" | "inside" | "outside";
decode: (val: string) => "rgb" | "hsb" | "lab"; encode: (val: "center" | "inside" | "outside" | undefined) => string;
encode: (val: "rgb" | "hsb" | "lab" | undefined) => string; };
}; export declare const FrFl: {
export declare const FStl: { decode: (val: string) => "color" | "pattern" | "gradient";
decode: (val: string) => "center" | "inside" | "outside"; encode: (val: "color" | "pattern" | "gradient" | undefined) => string;
encode: (val: "center" | "inside" | "outside" | undefined) => string; };
}; export declare const strokeStyleLineCapType: {
export declare const FrFl: { decode: (val: string) => LineCapType;
decode: (val: string) => "color" | "pattern" | "gradient"; encode: (val: LineCapType | undefined) => string;
encode: (val: "color" | "pattern" | "gradient" | undefined) => string; };
}; export declare const strokeStyleLineJoinType: {
export declare const ESliceType: { decode: (val: string) => LineJoinType;
decode: (val: string) => "image" | "noImage"; encode: (val: LineJoinType | undefined) => string;
encode: (val: "image" | "noImage" | undefined) => string; };
}; export declare const strokeStyleLineAlignment: {
export declare const ESliceHorzAlign: { decode: (val: string) => LineAlignment;
decode: (val: string) => "default"; encode: (val: LineAlignment | undefined) => string;
encode: (val: "default" | undefined) => string; };
};
export declare const ESliceVertAlign: {
decode: (val: string) => "default";
encode: (val: "default" | undefined) => string;
};
export declare const ESliceOrigin: {
decode: (val: string) => "userGenerated" | "autoGenerated" | "layer";
encode: (val: "userGenerated" | "autoGenerated" | "layer" | undefined) => string;
};
export declare const ESliceBGColorType: {
decode: (val: string) => "none" | "color" | "matte";
encode: (val: "none" | "color" | "matte" | undefined) => string;
};
export declare const strokeStyleLineCapType: {
decode: (val: string) => LineCapType;
encode: (val: LineCapType | undefined) => string;
};
export declare const strokeStyleLineJoinType: {
decode: (val: string) => LineJoinType;
encode: (val: LineJoinType | undefined) => string;
};
export declare const strokeStyleLineAlignment: {
decode: (val: string) => LineAlignment;
encode: (val: LineAlignment | undefined) => string;
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
import { LayerEffectsInfo } from './psd'; import { LayerEffectsInfo } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export declare function readEffects(reader: PsdReader): LayerEffectsInfo; export declare function readEffects(reader: PsdReader): LayerEffectsInfo;
export declare function writeEffects(writer: PsdWriter, effects: LayerEffectsInfo): void; export declare function writeEffects(writer: PsdWriter, effects: LayerEffectsInfo): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
export declare function parseEngineData(data: number[] | Uint8Array): any; export declare function parseEngineData(data: number[] | Uint8Array): any;
export declare function serializeEngineData(data: any, condensed?: boolean): Uint8Array; export declare function serializeEngineData(data: any, condensed?: boolean): Uint8Array;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,93 +1,93 @@
import { Layer, BlendMode, LayerColor } from './psd'; import { Layer, BlendMode, LayerColor } from './psd';
export declare const MOCK_HANDLERS = false; export declare const MOCK_HANDLERS = false;
export declare const RAW_IMAGE_DATA = false; export declare const RAW_IMAGE_DATA = false;
export declare const fromBlendMode: { export declare const fromBlendMode: {
[key: string]: string; [key: string]: string;
}; };
export declare const toBlendMode: { export declare const toBlendMode: {
[key: string]: BlendMode; [key: string]: BlendMode;
}; };
export declare const layerColors: LayerColor[]; export declare const layerColors: LayerColor[];
export declare const largeAdditionalInfoKeys: string[]; export declare const largeAdditionalInfoKeys: string[];
export interface Dict { export interface Dict {
[key: string]: string; [key: string]: string;
} }
export declare function revMap(map: Dict): Dict; export declare function revMap(map: Dict): Dict;
export declare function createEnum<T>(prefix: string, def: string, map: Dict): { export declare function createEnum<T>(prefix: string, def: string, map: Dict): {
decode: (val: string) => T; decode: (val: string) => T;
encode: (val: T | undefined) => string; encode: (val: T | undefined) => string;
}; };
export declare const enum ColorSpace { export declare const enum ColorSpace {
RGB = 0, RGB = 0,
HSB = 1, HSB = 1,
CMYK = 2, CMYK = 2,
Lab = 7, Lab = 7,
Grayscale = 8 Grayscale = 8
} }
export declare const enum LayerMaskFlags { export declare const enum LayerMaskFlags {
PositionRelativeToLayer = 1, PositionRelativeToLayer = 1,
LayerMaskDisabled = 2, LayerMaskDisabled = 2,
InvertLayerMaskWhenBlending = 4, InvertLayerMaskWhenBlending = 4,
LayerMaskFromRenderingOtherData = 8, LayerMaskFromRenderingOtherData = 8,
MaskHasParametersAppliedToIt = 16 MaskHasParametersAppliedToIt = 16
} }
export declare const enum MaskParams { export declare const enum MaskParams {
UserMaskDensity = 1, UserMaskDensity = 1,
UserMaskFeather = 2, UserMaskFeather = 2,
VectorMaskDensity = 4, VectorMaskDensity = 4,
VectorMaskFeather = 8 VectorMaskFeather = 8
} }
export declare const enum ChannelID { export declare const enum ChannelID {
Color0 = 0, Color0 = 0,
Color1 = 1, Color1 = 1,
Color2 = 2, Color2 = 2,
Color3 = 3, Color3 = 3,
Transparency = -1, Transparency = -1,
UserMask = -2, UserMask = -2,
RealUserMask = -3 RealUserMask = -3
} }
export declare const enum Compression { export declare const enum Compression {
RawData = 0, RawData = 0,
RleCompressed = 1, RleCompressed = 1,
ZipWithoutPrediction = 2, ZipWithoutPrediction = 2,
ZipWithPrediction = 3 ZipWithPrediction = 3
} }
export interface ChannelData { export interface ChannelData {
channelId: ChannelID; channelId: ChannelID;
compression: Compression; compression: Compression;
buffer: Uint8Array | undefined; buffer: Uint8Array | undefined;
length: number; length: number;
} }
export interface Bounds { export interface Bounds {
top: number; top: number;
left: number; left: number;
right: number; right: number;
bottom: number; bottom: number;
} }
export interface LayerChannelData { export interface LayerChannelData {
layer: Layer; layer: Layer;
channels: ChannelData[]; channels: ChannelData[];
top: number; top: number;
left: number; left: number;
right: number; right: number;
bottom: number; bottom: number;
mask?: Bounds; mask?: Bounds;
} }
export type PixelArray = Uint8ClampedArray | Uint8Array; export declare type PixelArray = Uint8ClampedArray | Uint8Array;
export interface PixelData { export interface PixelData {
data: PixelArray; data: PixelArray;
width: number; width: number;
height: number; height: number;
} }
export declare function offsetForChannel(channelId: ChannelID, cmyk: boolean): number; export declare function offsetForChannel(channelId: ChannelID, cmyk: boolean): number;
export declare function clamp(value: number, min: number, max: number): number; export declare function clamp(value: number, min: number, max: number): number;
export declare function hasAlpha(data: PixelData): boolean; export declare function hasAlpha(data: PixelData): boolean;
export declare function resetImageData({ data }: PixelData): void; export declare function resetImageData({ data }: PixelData): void;
export declare function decodeBitmap(input: PixelArray, output: PixelArray, width: number, height: number): void; export declare function decodeBitmap(input: PixelArray, output: PixelArray, width: number, height: number): void;
export declare function writeDataRaw(data: PixelData, offset: number, width: number, height: number): Uint8Array | undefined; export declare function writeDataRaw(data: PixelData, offset: number, width: number, height: number): Uint8Array | undefined;
export declare function writeDataRLE(buffer: Uint8Array, { data, width, height }: PixelData, offsets: number[], large: boolean): Uint8Array | undefined; export declare function writeDataRLE(buffer: Uint8Array, { data, width, height }: PixelData, offsets: number[], large: boolean): Uint8Array | undefined;
export declare function writeDataZipWithoutPrediction({ data, width, height }: PixelData, offsets: number[]): Uint8Array; export declare function writeDataZipWithoutPrediction({ data, width, height }: PixelData, offsets: number[]): Uint8Array;
export declare let createCanvas: (width: number, height: number) => HTMLCanvasElement; export declare let createCanvas: (width: number, height: number) => HTMLCanvasElement;
export declare let createCanvasFromData: (data: Uint8Array) => HTMLCanvasElement; export declare let createCanvasFromData: (data: Uint8Array) => HTMLCanvasElement;
export declare let createImageData: (width: number, height: number) => ImageData; export declare let createImageData: (width: number, height: number) => ImageData;
export declare function initializeCanvas(createCanvasMethod: (width: number, height: number) => HTMLCanvasElement, createCanvasFromDataMethod?: (data: Uint8Array) => HTMLCanvasElement, createImageDataMethod?: (width: number, height: number) => ImageData): void; export declare function initializeCanvas(createCanvasMethod: (width: number, height: number) => HTMLCanvasElement, createCanvasFromDataMethod?: (data: Uint8Array) => HTMLCanvasElement, createImageDataMethod?: (width: number, height: number) => ImageData): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,13 +1,13 @@
import { ImageResources, ReadOptions } from './psd'; import { ImageResources, ReadOptions } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export interface ResourceHandler { export interface ResourceHandler {
key: number; key: number;
has: (target: ImageResources) => boolean | number; has: (target: ImageResources) => boolean;
read: (reader: PsdReader, target: ImageResources, left: () => number, options: ReadOptions) => void; read: (reader: PsdReader, target: ImageResources, left: () => number, options: ReadOptions) => void;
write: (writer: PsdWriter, target: ImageResources, index: number) => void; write: (writer: PsdWriter, target: ImageResources) => void;
} }
export declare const resourceHandlers: ResourceHandler[]; export declare const resourceHandlers: ResourceHandler[];
export declare const resourceHandlersMap: { export declare const resourceHandlersMap: {
[key: number]: ResourceHandler; [key: number]: ResourceHandler;
}; };

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,20 +1,20 @@
/// <reference types="node" /> /// <reference types="node" />
import { Psd, ReadOptions, WriteOptions } from './psd'; import { Psd, ReadOptions, WriteOptions } from './psd';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
export * from './abr'; export * from './abr';
export * from './csh'; export * from './csh';
export { initializeCanvas } from './helpers'; export { initializeCanvas } from './helpers';
export * from './psd'; export * from './psd';
import { fromByteArray } from 'base64-js'; import { fromByteArray } from 'base64-js';
export { PsdReader, PsdWriter }; export { PsdReader, PsdWriter };
interface BufferLike { interface BufferLike {
buffer: ArrayBuffer; buffer: ArrayBuffer;
byteOffset: number; byteOffset: number;
byteLength: number; byteLength: number;
} }
export declare const byteArrayToBase64: typeof fromByteArray; export declare const byteArrayToBase64: typeof fromByteArray;
export declare function readPsd(buffer: ArrayBuffer | BufferLike, options?: ReadOptions): Psd; export declare function readPsd(buffer: ArrayBuffer | BufferLike, options?: ReadOptions): Psd;
export declare function writePsd(psd: Psd, options?: WriteOptions): ArrayBuffer; export declare function writePsd(psd: Psd, options?: WriteOptions): ArrayBuffer;
export declare function writePsdUint8Array(psd: Psd, options?: WriteOptions): Uint8Array; export declare function writePsdUint8Array(psd: Psd, options?: WriteOptions): Uint8Array;
export declare function writePsdBuffer(psd: Psd, options?: WriteOptions): Buffer; export declare function writePsdBuffer(psd: Psd, options?: WriteOptions): Buffer;

View File

@ -1,31 +1,32 @@
import { writePsd as writePsdInternal, getWriterBuffer, createWriter, getWriterBufferNoCopy } from './psdWriter'; import { writePsd as writePsdInternal, getWriterBuffer, createWriter, getWriterBufferNoCopy } from './psdWriter';
import { readPsd as readPsdInternal, createReader } from './psdReader'; import { readPsd as readPsdInternal, createReader } from './psdReader';
export * from './abr'; export * from './abr';
export * from './csh'; export * from './csh';
export { initializeCanvas } from './helpers'; export { initializeCanvas } from './helpers';
export * from './psd'; export * from './psd';
import { fromByteArray } from 'base64-js'; import { fromByteArray } from 'base64-js';
export var byteArrayToBase64 = fromByteArray; export var byteArrayToBase64 = fromByteArray;
export function readPsd(buffer, options) { export function readPsd(buffer, options) {
var reader = 'buffer' in buffer ? var reader = 'buffer' in buffer ?
createReader(buffer.buffer, buffer.byteOffset, buffer.byteLength) : createReader(buffer.buffer, buffer.byteOffset, buffer.byteLength) :
createReader(buffer); createReader(buffer);
return readPsdInternal(reader, options); return readPsdInternal(reader, options);
} }
export function writePsd(psd, options) { export function writePsd(psd, options) {
var writer = createWriter(); var writer = createWriter();
writePsdInternal(writer, psd, options); writePsdInternal(writer, psd, options);
return getWriterBuffer(writer); return getWriterBuffer(writer);
} }
export function writePsdUint8Array(psd, options) { export function writePsdUint8Array(psd, options) {
var writer = createWriter(); var writer = createWriter();
writePsdInternal(writer, psd, options); writePsdInternal(writer, psd, options);
return getWriterBufferNoCopy(writer); return getWriterBufferNoCopy(writer);
} }
export function writePsdBuffer(psd, options) { export function writePsdBuffer(psd, options) {
if (typeof Buffer === 'undefined') { if (typeof Buffer === 'undefined') {
throw new Error('Buffer not supported on this platform'); throw new Error('Buffer not supported on this platform');
} }
return Buffer.from(writePsdUint8Array(psd, options)); return Buffer.from(writePsdUint8Array(psd, options));
} }
//# sourceMappingURL=index.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYSxRQUFRLElBQUksZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLFlBQVksRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUM1SCxPQUFPLEVBQWEsT0FBTyxJQUFJLGVBQWUsRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDbEYsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxPQUFPLENBQUM7QUFDdEIsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBQzdDLGNBQWMsT0FBTyxDQUFDO0FBQ3RCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFTMUMsTUFBTSxDQUFDLElBQU0saUJBQWlCLEdBQUcsYUFBYSxDQUFDO0FBRS9DLE1BQU0sVUFBVSxPQUFPLENBQUMsTUFBZ0MsRUFBRSxPQUFxQjtJQUM5RSxJQUFNLE1BQU0sR0FBRyxRQUFRLElBQUksTUFBTSxDQUFDLENBQUM7UUFDbEMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNuRSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEIsT0FBTyxlQUFlLENBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsUUFBUSxDQUFDLEdBQVEsRUFBRSxPQUFzQjtJQUN4RCxJQUFNLE1BQU0sR0FBRyxZQUFZLEVBQUUsQ0FBQztJQUM5QixnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsR0FBUSxFQUFFLE9BQXNCO0lBQ2xFLElBQU0sTUFBTSxHQUFHLFlBQVksRUFBRSxDQUFDO0lBQzlCLGdCQUFnQixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkMsT0FBTyxxQkFBcUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUN0QyxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxHQUFRLEVBQUUsT0FBc0I7SUFDOUQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7UUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUMiLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQc2QsIFJlYWRPcHRpb25zLCBXcml0ZU9wdGlvbnMgfSBmcm9tICcuL3BzZCc7XG5pbXBvcnQgeyBQc2RXcml0ZXIsIHdyaXRlUHNkIGFzIHdyaXRlUHNkSW50ZXJuYWwsIGdldFdyaXRlckJ1ZmZlciwgY3JlYXRlV3JpdGVyLCBnZXRXcml0ZXJCdWZmZXJOb0NvcHkgfSBmcm9tICcuL3BzZFdyaXRlcic7XG5pbXBvcnQgeyBQc2RSZWFkZXIsIHJlYWRQc2QgYXMgcmVhZFBzZEludGVybmFsLCBjcmVhdGVSZWFkZXIgfSBmcm9tICcuL3BzZFJlYWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2Ficic7XG5leHBvcnQgKiBmcm9tICcuL2NzaCc7XG5leHBvcnQgeyBpbml0aWFsaXplQ2FudmFzIH0gZnJvbSAnLi9oZWxwZXJzJztcbmV4cG9ydCAqIGZyb20gJy4vcHNkJztcbmltcG9ydCB7IGZyb21CeXRlQXJyYXkgfSBmcm9tICdiYXNlNjQtanMnO1xuZXhwb3J0IHsgUHNkUmVhZGVyLCBQc2RXcml0ZXIgfTtcblxuaW50ZXJmYWNlIEJ1ZmZlckxpa2Uge1xuXHRidWZmZXI6IEFycmF5QnVmZmVyO1xuXHRieXRlT2Zmc2V0OiBudW1iZXI7XG5cdGJ5dGVMZW5ndGg6IG51bWJlcjtcbn1cblxuZXhwb3J0IGNvbnN0IGJ5dGVBcnJheVRvQmFzZTY0ID0gZnJvbUJ5dGVBcnJheTtcblxuZXhwb3J0IGZ1bmN0aW9uIHJlYWRQc2QoYnVmZmVyOiBBcnJheUJ1ZmZlciB8IEJ1ZmZlckxpa2UsIG9wdGlvbnM/OiBSZWFkT3B0aW9ucyk6IFBzZCB7XG5cdGNvbnN0IHJlYWRlciA9ICdidWZmZXInIGluIGJ1ZmZlciA/XG5cdFx0Y3JlYXRlUmVhZGVyKGJ1ZmZlci5idWZmZXIsIGJ1ZmZlci5ieXRlT2Zmc2V0LCBidWZmZXIuYnl0ZUxlbmd0aCkgOlxuXHRcdGNyZWF0ZVJlYWRlcihidWZmZXIpO1xuXHRyZXR1cm4gcmVhZFBzZEludGVybmFsKHJlYWRlciwgb3B0aW9ucyk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cml0ZVBzZChwc2Q6IFBzZCwgb3B0aW9ucz86IFdyaXRlT3B0aW9ucyk6IEFycmF5QnVmZmVyIHtcblx0Y29uc3Qgd3JpdGVyID0gY3JlYXRlV3JpdGVyKCk7XG5cdHdyaXRlUHNkSW50ZXJuYWwod3JpdGVyLCBwc2QsIG9wdGlvbnMpO1xuXHRyZXR1cm4gZ2V0V3JpdGVyQnVmZmVyKHdyaXRlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cml0ZVBzZFVpbnQ4QXJyYXkocHNkOiBQc2QsIG9wdGlvbnM/OiBXcml0ZU9wdGlvbnMpOiBVaW50OEFycmF5IHtcblx0Y29uc3Qgd3JpdGVyID0gY3JlYXRlV3JpdGVyKCk7XG5cdHdyaXRlUHNkSW50ZXJuYWwod3JpdGVyLCBwc2QsIG9wdGlvbnMpO1xuXHRyZXR1cm4gZ2V0V3JpdGVyQnVmZmVyTm9Db3B5KHdyaXRlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiB3cml0ZVBzZEJ1ZmZlcihwc2Q6IFBzZCwgb3B0aW9ucz86IFdyaXRlT3B0aW9ucyk6IEJ1ZmZlciB7XG5cdGlmICh0eXBlb2YgQnVmZmVyID09PSAndW5kZWZpbmVkJykge1xuXHRcdHRocm93IG5ldyBFcnJvcignQnVmZmVyIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybScpO1xuXHR9XG5cblx0cmV0dXJuIEJ1ZmZlci5mcm9tKHdyaXRlUHNkVWludDhBcnJheShwc2QsIG9wdGlvbnMpKTtcbn1cbiJdLCJzb3VyY2VSb290IjoiQzpcXFByb2plY3RzXFxnaXRodWJcXGFnLXBzZFxcc3JjIn0=

View File

@ -1 +0,0 @@
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,QAAQ,IAAI,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAC5H,OAAO,EAAa,OAAO,IAAI,eAAe,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAClF,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,cAAc,OAAO,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAS1C,MAAM,CAAC,IAAM,iBAAiB,GAAG,aAAa,CAAC;AAE/C,MAAM,UAAU,OAAO,CAAC,MAAgC,EAAE,OAAqB;IAC9E,IAAM,MAAM,GAAG,QAAQ,IAAI,MAAM,CAAC,CAAC;QAClC,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;QACnE,YAAY,CAAC,MAAM,CAAC,CAAC;IACtB,OAAO,eAAe,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ,EAAE,OAAsB;IACxD,IAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,eAAe,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAQ,EAAE,OAAsB;IAClE,IAAM,MAAM,GAAG,YAAY,EAAE,CAAC;IAC9B,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACvC,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAC;AACtC,CAAC;AAED,MAAM,UAAU,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"}

View File

@ -1 +1 @@
export declare function initialize(): void; export declare function initialize(): void;

View File

@ -1,22 +1,23 @@
import { createCanvas } from 'canvas'; import { createCanvas } from 'canvas';
import { initializeCanvas } from './index'; import { initializeCanvas } from './index';
import { decodeJpeg } from './jpeg'; import { decodeJpeg } from './jpeg';
function createCanvasFromData(data) { function createCanvasFromData(data) {
var canvas = createCanvas(100, 100); var canvas = createCanvas(100, 100);
try { try {
var context_1 = canvas.getContext('2d'); var context_1 = canvas.getContext('2d');
var imageData = decodeJpeg(data, function (w, h) { return context_1.createImageData(w, h); }); var imageData = decodeJpeg(data, function (w, h) { return context_1.createImageData(w, h); });
canvas.width = imageData.width; canvas.width = imageData.width;
canvas.height = imageData.height; canvas.height = imageData.height;
context_1.putImageData(imageData, 0, 0); context_1.putImageData(imageData, 0, 0);
} }
catch (e) { catch (e) {
console.error('JPEG decompression error', e.message); console.error('JPEG decompression error', e.message);
} }
return canvas; return canvas;
} }
initializeCanvas(createCanvas, createCanvasFromData); initializeCanvas(createCanvas, createCanvasFromData);
export function initialize() { export function initialize() {
initializeCanvas(createCanvas, createCanvasFromData); initializeCanvas(createCanvas, createCanvasFromData);
} }
//# sourceMappingURL=initializeCanvas.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluaXRpYWxpemVDYW52YXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUN0QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDM0MsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUVwQyxTQUFTLG9CQUFvQixDQUFDLElBQWdCO0lBQzdDLElBQU0sTUFBTSxHQUFHLFlBQVksQ0FBQyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7SUFFdEMsSUFBSTtRQUNILElBQU0sU0FBTyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFFLENBQUM7UUFDekMsSUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLElBQUksRUFBRSxVQUFDLENBQUMsRUFBRSxDQUFDLElBQUssT0FBQSxTQUFPLENBQUMsZUFBZSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsRUFBN0IsQ0FBNkIsQ0FBQyxDQUFDO1FBQzVFLE1BQU0sQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDLEtBQUssQ0FBQztRQUMvQixNQUFNLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxNQUFNLENBQUM7UUFDakMsU0FBTyxDQUFDLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO0tBQ3RDO0lBQUMsT0FBTyxDQUFNLEVBQUU7UUFDaEIsT0FBTyxDQUFDLEtBQUssQ0FBQywwQkFBMEIsRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7S0FDckQ7SUFFRCxPQUFPLE1BQU0sQ0FBQztBQUNmLENBQUM7QUFFRCxnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztBQUVyRCxNQUFNLFVBQVUsVUFBVTtJQUN6QixnQkFBZ0IsQ0FBQyxZQUFZLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztBQUN0RCxDQUFDIiwiZmlsZSI6ImluaXRpYWxpemVDYW52YXMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBjcmVhdGVDYW52YXMgfSBmcm9tICdjYW52YXMnO1xyXG5pbXBvcnQgeyBpbml0aWFsaXplQ2FudmFzIH0gZnJvbSAnLi9pbmRleCc7XHJcbmltcG9ydCB7IGRlY29kZUpwZWcgfSBmcm9tICcuL2pwZWcnO1xyXG5cclxuZnVuY3Rpb24gY3JlYXRlQ2FudmFzRnJvbURhdGEoZGF0YTogVWludDhBcnJheSkge1xyXG5cdGNvbnN0IGNhbnZhcyA9IGNyZWF0ZUNhbnZhcygxMDAsIDEwMCk7XHJcblxyXG5cdHRyeSB7XHJcblx0XHRjb25zdCBjb250ZXh0ID0gY2FudmFzLmdldENvbnRleHQoJzJkJykhO1xyXG5cdFx0Y29uc3QgaW1hZ2VEYXRhID0gZGVjb2RlSnBlZyhkYXRhLCAodywgaCkgPT4gY29udGV4dC5jcmVhdGVJbWFnZURhdGEodywgaCkpO1xyXG5cdFx0Y2FudmFzLndpZHRoID0gaW1hZ2VEYXRhLndpZHRoO1xyXG5cdFx0Y2FudmFzLmhlaWdodCA9IGltYWdlRGF0YS5oZWlnaHQ7XHJcblx0XHRjb250ZXh0LnB1dEltYWdlRGF0YShpbWFnZURhdGEsIDAsIDApO1xyXG5cdH0gY2F0Y2ggKGU6IGFueSkge1xyXG5cdFx0Y29uc29sZS5lcnJvcignSlBFRyBkZWNvbXByZXNzaW9uIGVycm9yJywgZS5tZXNzYWdlKTtcclxuXHR9XHJcblxyXG5cdHJldHVybiBjYW52YXM7XHJcbn1cclxuXHJcbmluaXRpYWxpemVDYW52YXMoY3JlYXRlQ2FudmFzLCBjcmVhdGVDYW52YXNGcm9tRGF0YSk7XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gaW5pdGlhbGl6ZSgpIHtcclxuXHRpbml0aWFsaXplQ2FudmFzKGNyZWF0ZUNhbnZhcywgY3JlYXRlQ2FudmFzRnJvbURhdGEpO1xyXG59XHJcbiJdLCJzb3VyY2VSb290IjoiQzpcXFByb2plY3RzXFxnaXRodWJcXGFnLXBzZFxcc3JjIn0=

View File

@ -1 +0,0 @@
{"version":3,"file":"initializeCanvas.js","sourceRoot":"../src/","sources":["initializeCanvas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,SAAS,oBAAoB,CAAC,IAAgB;IAC7C,IAAM,MAAM,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IAEtC,IAAI;QACH,IAAM,SAAO,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAE,CAAC;QACzC,IAAM,SAAS,GAAG,UAAU,CAAC,IAAI,EAAE,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,SAAO,CAAC,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,EAA7B,CAA6B,CAAC,CAAC;QAC5E,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;AAED,gBAAgB,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;AAErD,MAAM,UAAU,UAAU;IACzB,gBAAgB,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;AACtD,CAAC"}

View File

@ -1 +1 @@
export declare function decodeJpeg(encoded: Uint8Array, createImageData: (width: number, height: number) => ImageData): ImageData; export declare function decodeJpeg(encoded: Uint8Array, createImageData: (width: number, height: number) => ImageData): ImageData;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"version":3,"file":"psd.js","sourceRoot":"../src/","sources":["psd.ts"],"names":[],"mappings":"AAMA,MAAM,CAAN,IAAkB,SASjB;AATD,WAAkB,SAAS;IAC1B,6CAAU,CAAA;IACV,mDAAa,CAAA;IACb,+CAAW,CAAA;IACX,uCAAO,CAAA;IACP,yCAAQ,CAAA;IACR,yDAAgB,CAAA;IAChB,+CAAW,CAAA;IACX,uCAAO,CAAA;AACR,CAAC,EATiB,SAAS,KAAT,SAAS,QAS1B;AAED,MAAM,CAAN,IAAkB,kBAKjB;AALD,WAAkB,kBAAkB;IACnC,6DAAS,CAAA;IACT,uEAAc,CAAA;IACd,2EAAgB,CAAA;IAChB,+FAA0B,CAAA;AAC3B,CAAC,EALiB,kBAAkB,KAAlB,kBAAkB,QAKnC"}

View File

@ -1,36 +1,36 @@
import { Psd, ColorMode, ReadOptions, Color, PatternInfo } from './psd'; import { Psd, ColorMode, ReadOptions, Color, PatternInfo } from './psd';
import { PixelData } from './helpers'; import { PixelData } from './helpers';
export declare const supportedColorModes: ColorMode[]; export declare const supportedColorModes: ColorMode[];
export interface PsdReader { export interface PsdReader {
offset: number; offset: number;
view: DataView; view: DataView;
strict: boolean; strict: boolean;
debug: boolean; debug: boolean;
} }
export declare function createReader(buffer: ArrayBuffer, offset?: number, length?: number): PsdReader; export declare function createReader(buffer: ArrayBuffer, offset?: number, length?: number): PsdReader;
export declare function warnOrThrow(reader: PsdReader, message: string): void; export declare function warnOrThrow(reader: PsdReader, message: string): void;
export declare function readUint8(reader: PsdReader): number; export declare function readUint8(reader: PsdReader): number;
export declare function peekUint8(reader: PsdReader): number; export declare function peekUint8(reader: PsdReader): number;
export declare function readInt16(reader: PsdReader): number; export declare function readInt16(reader: PsdReader): number;
export declare function readUint16(reader: PsdReader): number; export declare function readUint16(reader: PsdReader): number;
export declare function readInt32(reader: PsdReader): number; export declare function readInt32(reader: PsdReader): number;
export declare function readInt32LE(reader: PsdReader): number; export declare function readInt32LE(reader: PsdReader): number;
export declare function readUint32(reader: PsdReader): number; export declare function readUint32(reader: PsdReader): number;
export declare function readFloat32(reader: PsdReader): number; export declare function readFloat32(reader: PsdReader): number;
export declare function readFloat64(reader: PsdReader): number; export declare function readFloat64(reader: PsdReader): number;
export declare function readFixedPoint32(reader: PsdReader): number; export declare function readFixedPoint32(reader: PsdReader): number;
export declare function readFixedPointPath32(reader: PsdReader): number; export declare function readFixedPointPath32(reader: PsdReader): number;
export declare function readBytes(reader: PsdReader, length: number): Uint8Array; export declare function readBytes(reader: PsdReader, length: number): Uint8Array;
export declare function readSignature(reader: PsdReader): string; export declare function readSignature(reader: PsdReader): string;
export declare function readPascalString(reader: PsdReader, padTo: number): string; export declare function readPascalString(reader: PsdReader, padTo: number): string;
export declare function readUnicodeString(reader: PsdReader): string; export declare function readUnicodeString(reader: PsdReader): string;
export declare function readUnicodeStringWithLength(reader: PsdReader, length: number): string; export declare function readUnicodeStringWithLength(reader: PsdReader, length: number): string;
export declare function readAsciiString(reader: PsdReader, length: number): string; export declare function readAsciiString(reader: PsdReader, length: number): string;
export declare function skipBytes(reader: PsdReader, count: number): void; export declare function skipBytes(reader: PsdReader, count: number): void;
export declare function checkSignature(reader: PsdReader, a: string, b?: string): void; export declare function checkSignature(reader: PsdReader, a: string, b?: string): void;
export declare function readPsd(reader: PsdReader, options?: ReadOptions): Psd; export declare function readPsd(reader: PsdReader, options?: ReadOptions): Psd;
export declare function readDataZipWithoutPrediction(reader: PsdReader, length: number, pixelData: PixelData | undefined, width: number, height: number, step: number, offset: number): void; export declare function readDataZipWithoutPrediction(reader: PsdReader, length: number, pixelData: PixelData | undefined, width: number, height: number, step: number, offset: number): void;
export declare function readDataRLE(reader: PsdReader, pixelData: PixelData | undefined, _width: number, height: number, step: number, offsets: number[], large: boolean): void; export declare function readDataRLE(reader: PsdReader, pixelData: PixelData | undefined, _width: number, height: number, step: number, offsets: number[], large: boolean): void;
export declare function readSection<T>(reader: PsdReader, round: number, func: (left: () => number) => T, skipEmpty?: boolean, eightBytes?: boolean): T | undefined; export declare function readSection<T>(reader: PsdReader, round: number, func: (left: () => number) => T, skipEmpty?: boolean, eightBytes?: boolean): T | undefined;
export declare function readColor(reader: PsdReader): Color; export declare function readColor(reader: PsdReader): Color;
export declare function readPattern(reader: PsdReader): PatternInfo; export declare function readPattern(reader: PsdReader): PatternInfo;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,27 +1,27 @@
import { Psd, WriteOptions, Color } from './psd'; import { Psd, WriteOptions, Color } from './psd';
export interface PsdWriter { export interface PsdWriter {
offset: number; offset: number;
buffer: ArrayBuffer; buffer: ArrayBuffer;
view: DataView; view: DataView;
} }
export declare function createWriter(size?: number): PsdWriter; export declare function createWriter(size?: number): PsdWriter;
export declare function getWriterBuffer(writer: PsdWriter): ArrayBuffer; export declare function getWriterBuffer(writer: PsdWriter): ArrayBuffer;
export declare function getWriterBufferNoCopy(writer: PsdWriter): Uint8Array; export declare function getWriterBufferNoCopy(writer: PsdWriter): Uint8Array;
export declare function writeUint8(writer: PsdWriter, value: number): void; export declare function writeUint8(writer: PsdWriter, value: number): void;
export declare function writeInt16(writer: PsdWriter, value: number): void; export declare function writeInt16(writer: PsdWriter, value: number): void;
export declare function writeUint16(writer: PsdWriter, value: number): void; export declare function writeUint16(writer: PsdWriter, value: number): void;
export declare function writeInt32(writer: PsdWriter, value: number): void; export declare function writeInt32(writer: PsdWriter, value: number): void;
export declare function writeUint32(writer: PsdWriter, value: number): void; export declare function writeUint32(writer: PsdWriter, value: number): void;
export declare function writeFloat32(writer: PsdWriter, value: number): void; export declare function writeFloat32(writer: PsdWriter, value: number): void;
export declare function writeFloat64(writer: PsdWriter, value: number): void; export declare function writeFloat64(writer: PsdWriter, value: number): void;
export declare function writeFixedPoint32(writer: PsdWriter, value: number): void; export declare function writeFixedPoint32(writer: PsdWriter, value: number): void;
export declare function writeFixedPointPath32(writer: PsdWriter, value: number): void; export declare function writeFixedPointPath32(writer: PsdWriter, value: number): void;
export declare function writeBytes(writer: PsdWriter, buffer: Uint8Array | undefined): void; export declare function writeBytes(writer: PsdWriter, buffer: Uint8Array | undefined): void;
export declare function writeZeros(writer: PsdWriter, count: number): void; export declare function writeZeros(writer: PsdWriter, count: number): void;
export declare function writeSignature(writer: PsdWriter, signature: string): void; export declare function writeSignature(writer: PsdWriter, signature: string): void;
export declare function writePascalString(writer: PsdWriter, text: string, padTo: number): void; export declare function writePascalString(writer: PsdWriter, text: string, padTo: number): void;
export declare function writeUnicodeString(writer: PsdWriter, text: string): void; export declare function writeUnicodeString(writer: PsdWriter, text: string): void;
export declare function writeUnicodeStringWithPadding(writer: PsdWriter, text: string): void; export declare function writeUnicodeStringWithPadding(writer: PsdWriter, text: string): void;
export declare function writeSection(writer: PsdWriter, round: number, func: () => void, writeTotalLength?: boolean, large?: boolean): void; export declare function writeSection(writer: PsdWriter, round: number, func: () => void, writeTotalLength?: boolean, large?: boolean): void;
export declare function writePsd(writer: PsdWriter, psd: Psd, options?: WriteOptions): void; export declare function writePsd(writer: PsdWriter, psd: Psd, options?: WriteOptions): void;
export declare function writeColor(writer: PsdWriter, color: Color | undefined): void; export declare function writeColor(writer: PsdWriter, color: Color | undefined): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,168 +1,168 @@
import { LayerTextData } from './psd'; import { LayerTextData } from './psd';
interface Adjustments { interface Adjustments {
Axis: number[]; Axis: number[];
XY: number[]; XY: number[];
} }
interface TypeValues { interface TypeValues {
Type: number; Type: number;
Values: number[]; Values: number[];
} }
interface ParagraphProperties { interface ParagraphProperties {
Justification?: number; Justification?: number;
FirstLineIndent?: number; FirstLineIndent?: number;
StartIndent?: number; StartIndent?: number;
EndIndent?: number; EndIndent?: number;
SpaceBefore?: number; SpaceBefore?: number;
SpaceAfter?: number; SpaceAfter?: number;
AutoHyphenate?: boolean; AutoHyphenate?: boolean;
HyphenatedWordSize?: number; HyphenatedWordSize?: number;
PreHyphen?: number; PreHyphen?: number;
PostHyphen?: number; PostHyphen?: number;
ConsecutiveHyphens?: number; ConsecutiveHyphens?: number;
Zone?: number; Zone?: number;
WordSpacing?: number[]; WordSpacing?: number[];
LetterSpacing?: number[]; LetterSpacing?: number[];
GlyphSpacing?: number[]; GlyphSpacing?: number[];
AutoLeading?: number; AutoLeading?: number;
LeadingType?: number; LeadingType?: number;
Hanging?: boolean; Hanging?: boolean;
Burasagari?: boolean; Burasagari?: boolean;
KinsokuOrder?: number; KinsokuOrder?: number;
EveryLineComposer?: boolean; EveryLineComposer?: boolean;
} }
interface ParagraphSheet { interface ParagraphSheet {
Name?: string; Name?: string;
DefaultStyleSheet: number; DefaultStyleSheet: number;
Properties: ParagraphProperties; Properties: ParagraphProperties;
} }
interface StyleSheetData { interface StyleSheetData {
Font?: number; Font?: number;
FontSize?: number; FontSize?: number;
FauxBold?: boolean; FauxBold?: boolean;
FauxItalic?: boolean; FauxItalic?: boolean;
AutoLeading?: boolean; AutoLeading?: boolean;
Leading?: number; Leading?: number;
HorizontalScale?: number; HorizontalScale?: number;
VerticalScale?: number; VerticalScale?: number;
Tracking?: number; Tracking?: number;
AutoKerning?: boolean; AutoKerning?: boolean;
Kerning?: number; Kerning?: number;
BaselineShift?: number; BaselineShift?: number;
FontCaps?: number; FontCaps?: number;
FontBaseline?: number; FontBaseline?: number;
Underline?: boolean; Underline?: boolean;
Strikethrough?: boolean; Strikethrough?: boolean;
Ligatures?: boolean; Ligatures?: boolean;
DLigatures?: boolean; DLigatures?: boolean;
BaselineDirection?: number; BaselineDirection?: number;
Tsume?: number; Tsume?: number;
StyleRunAlignment?: number; StyleRunAlignment?: number;
Language?: number; Language?: number;
NoBreak?: boolean; NoBreak?: boolean;
FillColor?: TypeValues; FillColor?: TypeValues;
StrokeColor?: TypeValues; StrokeColor?: TypeValues;
FillFlag?: boolean; FillFlag?: boolean;
StrokeFlag?: boolean; StrokeFlag?: boolean;
FillFirst?: boolean; FillFirst?: boolean;
YUnderline?: number; YUnderline?: number;
OutlineWidth?: number; OutlineWidth?: number;
CharacterDirection?: number; CharacterDirection?: number;
HindiNumbers?: boolean; HindiNumbers?: boolean;
Kashida?: number; Kashida?: number;
DiacriticPos?: number; DiacriticPos?: number;
} }
interface FontSet { interface FontSet {
Name: string; Name: string;
Script: number; Script: number;
FontType: number; FontType: number;
Synthetic: number; Synthetic: number;
} }
interface ResourceDict { interface ResourceDict {
KinsokuSet: any[]; KinsokuSet: any[];
MojiKumiSet: any[]; MojiKumiSet: any[];
TheNormalStyleSheet: number; TheNormalStyleSheet: number;
TheNormalParagraphSheet: number; TheNormalParagraphSheet: number;
ParagraphSheetSet: ParagraphSheet[]; ParagraphSheetSet: ParagraphSheet[];
StyleSheetSet: { StyleSheetSet: {
Name: string; Name: string;
StyleSheetData: StyleSheetData; StyleSheetData: StyleSheetData;
}[]; }[];
FontSet: FontSet[]; FontSet: FontSet[];
SuperscriptSize: number; SuperscriptSize: number;
SuperscriptPosition: number; SuperscriptPosition: number;
SubscriptSize: number; SubscriptSize: number;
SubscriptPosition: number; SubscriptPosition: number;
SmallCapSize: number; SmallCapSize: number;
} }
interface ParagraphRun { interface ParagraphRun {
ParagraphSheet: ParagraphSheet; ParagraphSheet: ParagraphSheet;
Adjustments: Adjustments; Adjustments: Adjustments;
} }
interface StyleRun { interface StyleRun {
StyleSheet: { StyleSheet: {
StyleSheetData: StyleSheetData; StyleSheetData: StyleSheetData;
}; };
} }
interface PhotoshopNode { interface PhotoshopNode {
ShapeType?: number; ShapeType?: number;
PointBase?: number[]; PointBase?: number[];
BoxBounds?: number[]; BoxBounds?: number[];
Base?: { Base?: {
ShapeType: number; ShapeType: number;
TransformPoint0: number[]; TransformPoint0: number[];
TransformPoint1: number[]; TransformPoint1: number[];
TransformPoint2: number[]; TransformPoint2: number[];
}; };
} }
interface EngineData { interface EngineData {
EngineDict: { EngineDict: {
Editor: { Editor: {
Text: string; Text: string;
}; };
ParagraphRun: { ParagraphRun: {
DefaultRunData: ParagraphRun; DefaultRunData: ParagraphRun;
RunArray: ParagraphRun[]; RunArray: ParagraphRun[];
RunLengthArray: number[]; RunLengthArray: number[];
IsJoinable: number; IsJoinable: number;
}; };
StyleRun: { StyleRun: {
DefaultRunData: StyleRun; DefaultRunData: StyleRun;
RunArray: StyleRun[]; RunArray: StyleRun[];
RunLengthArray: number[]; RunLengthArray: number[];
IsJoinable: number; IsJoinable: number;
}; };
GridInfo: { GridInfo: {
GridIsOn: boolean; GridIsOn: boolean;
ShowGrid: boolean; ShowGrid: boolean;
GridSize: number; GridSize: number;
GridLeading: number; GridLeading: number;
GridColor: TypeValues; GridColor: TypeValues;
GridLeadingFillColor: TypeValues; GridLeadingFillColor: TypeValues;
AlignLineHeightToGridFlags: boolean; AlignLineHeightToGridFlags: boolean;
}; };
AntiAlias: number; AntiAlias: number;
UseFractionalGlyphWidths: boolean; UseFractionalGlyphWidths: boolean;
Rendered?: { Rendered?: {
Version: number; Version: number;
Shapes?: { Shapes?: {
WritingDirection: number; WritingDirection: number;
Children?: { Children?: {
ShapeType?: number; ShapeType?: number;
Procession: number; Procession: number;
Lines: { Lines: {
WritingDirection: number; WritingDirection: number;
Children: any[]; Children: any[];
}; };
Cookie?: { Cookie?: {
Photoshop?: PhotoshopNode; Photoshop?: PhotoshopNode;
}; };
}[]; }[];
}; };
}; };
}; };
ResourceDict: ResourceDict; ResourceDict: ResourceDict;
DocumentResources: ResourceDict; DocumentResources: ResourceDict;
} }
export declare function decodeEngineData(engineData: EngineData): LayerTextData; export declare function decodeEngineData(engineData: EngineData): LayerTextData;
export declare function encodeEngineData(data: LayerTextData): EngineData; export declare function encodeEngineData(data: LayerTextData): EngineData;
export {}; export {};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
/// <reference types="node" /> /// <reference types="node" />
export declare function stringLengthInBytes(value: string): number; export declare function stringLengthInBytes(value: string): number;
export declare function encodeStringTo(buffer: Uint8Array | Buffer, offset: number, value: string): number; export declare function encodeStringTo(buffer: Uint8Array | Buffer, offset: number, value: string): number;
export declare function encodeString(value: string): Uint8Array; export declare function encodeString(value: string): Uint8Array;
export declare function decodeString(value: Uint8Array): string; export declare function decodeString(value: Uint8Array): string;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,132 +1,132 @@
import { BlendMode, PatternInfo } from './psd'; import { BlendMode, PatternInfo } from './psd';
export interface Abr { export interface Abr {
brushes: Brush[]; brushes: Brush[];
samples: SampleInfo[]; samples: SampleInfo[];
patterns: PatternInfo[]; patterns: PatternInfo[];
} }
export interface SampleInfo { export interface SampleInfo {
id: string; id: string;
bounds: { bounds: {
x: number; x: number;
y: number; y: number;
w: number; w: number;
h: number; h: number;
}; };
alpha: Uint8Array; alpha: Uint8Array;
} }
export interface BrushDynamics { export interface BrushDynamics {
control: 'off' | 'fade' | 'pen pressure' | 'pen tilt' | 'stylus wheel' | 'initial direction' | 'direction' | 'initial rotation' | 'rotation'; control: 'off' | 'fade' | 'pen pressure' | 'pen tilt' | 'stylus wheel' | 'initial direction' | 'direction' | 'initial rotation' | 'rotation';
steps: number; steps: number;
jitter: number; jitter: number;
minimum: number; minimum: number;
} }
export interface BrushShape { export interface BrushShape {
name?: string; name?: string;
size: number; size: number;
angle: number; angle: number;
roundness: number; roundness: number;
hardness?: number; hardness?: number;
spacingOn: boolean; spacingOn: boolean;
spacing: number; spacing: number;
flipX: boolean; flipX: boolean;
flipY: boolean; flipY: boolean;
sampledData?: string; sampledData?: string;
} }
export interface Brush { export interface Brush {
name: string; name: string;
shape: BrushShape; shape: BrushShape;
shapeDynamics?: { shapeDynamics?: {
sizeDynamics: BrushDynamics; sizeDynamics: BrushDynamics;
minimumDiameter: number; minimumDiameter: number;
tiltScale: number; tiltScale: number;
angleDynamics: BrushDynamics; angleDynamics: BrushDynamics;
roundnessDynamics: BrushDynamics; roundnessDynamics: BrushDynamics;
minimumRoundness: number; minimumRoundness: number;
flipX: boolean; flipX: boolean;
flipY: boolean; flipY: boolean;
brushProjection: boolean; brushProjection: boolean;
}; };
scatter?: { scatter?: {
bothAxes: boolean; bothAxes: boolean;
scatterDynamics: BrushDynamics; scatterDynamics: BrushDynamics;
countDynamics: BrushDynamics; countDynamics: BrushDynamics;
count: number; count: number;
}; };
texture?: { texture?: {
id: string; id: string;
name: string; name: string;
invert: boolean; invert: boolean;
scale: number; scale: number;
brightness: number; brightness: number;
contrast: number; contrast: number;
blendMode: BlendMode; blendMode: BlendMode;
depth: number; depth: number;
depthMinimum: number; depthMinimum: number;
depthDynamics: BrushDynamics; depthDynamics: BrushDynamics;
}; };
dualBrush?: { dualBrush?: {
flip: boolean; flip: boolean;
shape: BrushShape; shape: BrushShape;
blendMode: BlendMode; blendMode: BlendMode;
useScatter: boolean; useScatter: boolean;
spacing: number; spacing: number;
count: number; count: number;
bothAxes: boolean; bothAxes: boolean;
countDynamics: BrushDynamics; countDynamics: BrushDynamics;
scatterDynamics: BrushDynamics; scatterDynamics: BrushDynamics;
}; };
colorDynamics?: { colorDynamics?: {
foregroundBackground: BrushDynamics; foregroundBackground: BrushDynamics;
hue: number; hue: number;
saturation: number; saturation: number;
brightness: number; brightness: number;
purity: number; purity: number;
perTip: boolean; perTip: boolean;
}; };
transfer?: { transfer?: {
flowDynamics: BrushDynamics; flowDynamics: BrushDynamics;
opacityDynamics: BrushDynamics; opacityDynamics: BrushDynamics;
wetnessDynamics: BrushDynamics; wetnessDynamics: BrushDynamics;
mixDynamics: BrushDynamics; mixDynamics: BrushDynamics;
}; };
brushPose?: { brushPose?: {
overrideAngle: boolean; overrideAngle: boolean;
overrideTiltX: boolean; overrideTiltX: boolean;
overrideTiltY: boolean; overrideTiltY: boolean;
overridePressure: boolean; overridePressure: boolean;
pressure: number; pressure: number;
tiltX: number; tiltX: number;
tiltY: number; tiltY: number;
angle: number; angle: number;
}; };
noise: boolean; noise: boolean;
wetEdges: boolean; wetEdges: boolean;
protectTexture?: boolean; protectTexture?: boolean;
spacing: number; spacing: number;
brushGroup?: undefined; brushGroup?: undefined;
interpretation?: boolean; interpretation?: boolean;
useBrushSize: boolean; useBrushSize: boolean;
toolOptions?: { toolOptions?: {
brushPreset: boolean; brushPreset: boolean;
flow: number; flow: number;
smooth: number; smooth: number;
mode: BlendMode; mode: BlendMode;
opacity: number; opacity: number;
smoothing: boolean; smoothing: boolean;
smoothingValue: number; smoothingValue: number;
smoothingRadiusMode: boolean; smoothingRadiusMode: boolean;
smoothingCatchup: boolean; smoothingCatchup: boolean;
smoothingCatchupAtEnd: boolean; smoothingCatchupAtEnd: boolean;
smoothingZoomCompensation: boolean; smoothingZoomCompensation: boolean;
pressureSmoothing: boolean; pressureSmoothing: boolean;
usePressureOverridesSize: boolean; usePressureOverridesSize: boolean;
usePressureOverridesOpacity: boolean; usePressureOverridesOpacity: boolean;
useLegacy: boolean; useLegacy: boolean;
flowDynamics?: BrushDynamics; flowDynamics?: BrushDynamics;
opacityDynamics?: BrushDynamics; opacityDynamics?: BrushDynamics;
sizeDynamics?: BrushDynamics; sizeDynamics?: BrushDynamics;
}; };
} }
export declare function readAbr(buffer: ArrayBufferView, options?: { export declare function readAbr(buffer: ArrayBufferView, options?: {
logMissingFeatures?: boolean; logMissingFeatures?: boolean;
}): Abr; }): Abr;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,25 +1,25 @@
import { LayerAdditionalInfo, BezierPath, Psd, ReadOptions, WriteOptions, BooleanOperation, LayerEffectsInfo, LayerVectorMask } from './psd'; import { LayerAdditionalInfo, BezierPath, Psd, ReadOptions, WriteOptions, BooleanOperation, LayerEffectsInfo, LayerVectorMask } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export interface ExtendedWriteOptions extends WriteOptions { export interface ExtendedWriteOptions extends WriteOptions {
layerIds: Set<number>; layerIds: Set<number>;
layerToId: Map<any, number>; layerToId: Map<any, number>;
} }
type HasMethod = (target: LayerAdditionalInfo) => boolean; declare type HasMethod = (target: LayerAdditionalInfo) => boolean;
type ReadMethod = (reader: PsdReader, target: LayerAdditionalInfo, left: () => number, psd: Psd, options: ReadOptions) => void; declare type ReadMethod = (reader: PsdReader, target: LayerAdditionalInfo, left: () => number, psd: Psd, options: ReadOptions) => void;
type WriteMethod = (writer: PsdWriter, target: LayerAdditionalInfo, psd: Psd, options: ExtendedWriteOptions) => void; declare type WriteMethod = (writer: PsdWriter, target: LayerAdditionalInfo, psd: Psd, options: ExtendedWriteOptions) => void;
export interface InfoHandler { export interface InfoHandler {
key: string; key: string;
has: HasMethod; has: HasMethod;
read: ReadMethod; read: ReadMethod;
write: WriteMethod; write: WriteMethod;
} }
export declare const infoHandlers: InfoHandler[]; export declare const infoHandlers: InfoHandler[];
export declare const infoHandlersMap: { export declare const infoHandlersMap: {
[key: string]: InfoHandler; [key: string]: InfoHandler;
}; };
export declare function readBezierKnot(reader: PsdReader, width: number, height: number): number[]; export declare function readBezierKnot(reader: PsdReader, width: number, height: number): number[];
export declare const booleanOperations: BooleanOperation[]; export declare const booleanOperations: BooleanOperation[];
export declare function readVectorMask(reader: PsdReader, vectorMask: LayerVectorMask, width: number, height: number, size: number): BezierPath[]; export declare function readVectorMask(reader: PsdReader, vectorMask: LayerVectorMask, width: number, height: number, size: number): BezierPath[];
export declare function hasMultiEffects(effects: LayerEffectsInfo): boolean; export declare function hasMultiEffects(effects: LayerEffectsInfo): boolean;
export {}; export {};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +1,10 @@
import { LayerVectorMask } from './psd'; import { LayerVectorMask } from './psd';
export interface Csh { export interface Csh {
shapes: (LayerVectorMask & { shapes: (LayerVectorMask & {
name: string; name: string;
id: string; id: string;
width: number; width: number;
height: number; height: number;
})[]; })[];
} }
export declare function readCsh(buffer: ArrayBufferView): Csh; export declare function readCsh(buffer: ArrayBufferView): Csh;

View File

@ -1,48 +1,49 @@
"use strict"; "use strict";
var __assign = (this && this.__assign) || function () { var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) { __assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) { for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i]; s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p]; t[p] = s[p];
} }
return t; return t;
}; };
return __assign.apply(this, arguments); return __assign.apply(this, arguments);
}; };
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
exports.readCsh = void 0; exports.readCsh = void 0;
var additionalInfo_1 = require("./additionalInfo"); var additionalInfo_1 = require("./additionalInfo");
var psdReader_1 = require("./psdReader"); var psdReader_1 = require("./psdReader");
function readCsh(buffer) { function readCsh(buffer) {
var reader = (0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength); var reader = (0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength);
var csh = { shapes: [] }; var csh = { shapes: [] };
(0, psdReader_1.checkSignature)(reader, 'cush'); (0, psdReader_1.checkSignature)(reader, 'cush');
if ((0, psdReader_1.readUint32)(reader) !== 2) if ((0, psdReader_1.readUint32)(reader) !== 2)
throw new Error('Invalid version'); throw new Error('Invalid version');
var count = (0, psdReader_1.readUint32)(reader); var count = (0, psdReader_1.readUint32)(reader);
for (var i = 0; i < count; i++) { for (var i = 0; i < count; i++) {
var name_1 = (0, psdReader_1.readUnicodeString)(reader); var name_1 = (0, psdReader_1.readUnicodeString)(reader);
while (reader.offset % 4) while (reader.offset % 4)
reader.offset++; // pad to 4byte bounds reader.offset++; // pad to 4byte bounds
if ((0, psdReader_1.readUint32)(reader) !== 1) if ((0, psdReader_1.readUint32)(reader) !== 1)
throw new Error('Invalid shape version'); throw new Error('Invalid shape version');
var size = (0, psdReader_1.readUint32)(reader); var size = (0, psdReader_1.readUint32)(reader);
var end = reader.offset + size; var end = reader.offset + size;
var id = (0, psdReader_1.readPascalString)(reader, 1); var id = (0, psdReader_1.readPascalString)(reader, 1);
// this might not be correct ??? // this might not be correct ???
var y1 = (0, psdReader_1.readUint32)(reader); var y1 = (0, psdReader_1.readUint32)(reader);
var x1 = (0, psdReader_1.readUint32)(reader); var x1 = (0, psdReader_1.readUint32)(reader);
var y2 = (0, psdReader_1.readUint32)(reader); var y2 = (0, psdReader_1.readUint32)(reader);
var x2 = (0, psdReader_1.readUint32)(reader); var x2 = (0, psdReader_1.readUint32)(reader);
var width = x2 - x1; var width = x2 - x1;
var height = y2 - y1; var height = y2 - y1;
var mask = { paths: [] }; var mask = { paths: [] };
(0, additionalInfo_1.readVectorMask)(reader, mask, width, height, end - reader.offset); (0, additionalInfo_1.readVectorMask)(reader, mask, width, height, end - reader.offset);
csh.shapes.push(__assign({ name: name_1, id: id, width: width, height: height }, mask)); csh.shapes.push(__assign({ name: name_1, id: id, width: width, height: height }, mask));
reader.offset = end; reader.offset = end;
} }
return csh; return csh;
} }
exports.readCsh = readCsh; exports.readCsh = readCsh;
//# sourceMappingURL=csh.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7OztBQUFBLG1EQUFrRDtBQUVsRCx5Q0FBNEc7QUFXNUcsU0FBZ0IsT0FBTyxDQUFDLE1BQXVCO0lBQzlDLElBQU0sTUFBTSxHQUFHLElBQUEsd0JBQVksRUFBQyxNQUFNLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxVQUFVLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ2pGLElBQU0sR0FBRyxHQUFRLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBRWhDLElBQUEsMEJBQWMsRUFBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUM7SUFDL0IsSUFBSSxJQUFBLHNCQUFVLEVBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUNqRSxJQUFNLEtBQUssR0FBRyxJQUFBLHNCQUFVLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFFakMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtRQUMvQixJQUFNLE1BQUksR0FBRyxJQUFBLDZCQUFpQixFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZDLE9BQU8sTUFBTSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsc0JBQXNCO1FBQ2pFLElBQUksSUFBQSxzQkFBVSxFQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUM7WUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDdkUsSUFBTSxJQUFJLEdBQUcsSUFBQSxzQkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ2hDLElBQU0sR0FBRyxHQUFHLE1BQU0sQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO1FBQ2pDLElBQU0sRUFBRSxHQUFHLElBQUEsNEJBQWdCLEVBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3ZDLGdDQUFnQztRQUNoQyxJQUFNLEVBQUUsR0FBRyxJQUFBLHNCQUFVLEVBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsSUFBTSxFQUFFLEdBQUcsSUFBQSxzQkFBVSxFQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzlCLElBQU0sRUFBRSxHQUFHLElBQUEsc0JBQVUsRUFBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixJQUFNLEVBQUUsR0FBRyxJQUFBLHNCQUFVLEVBQUMsTUFBTSxDQUFDLENBQUM7UUFDOUIsSUFBTSxLQUFLLEdBQUcsRUFBRSxHQUFHLEVBQUUsQ0FBQztRQUN0QixJQUFNLE1BQU0sR0FBRyxFQUFFLEdBQUcsRUFBRSxDQUFDO1FBQ3ZCLElBQU0sSUFBSSxHQUFvQixFQUFFLEtBQUssRUFBRSxFQUFFLEVBQUUsQ0FBQztRQUM1QyxJQUFBLCtCQUFjLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEdBQUcsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDakUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLFlBQUcsSUFBSSxRQUFBLEVBQUUsRUFBRSxJQUFBLEVBQUUsS0FBSyxPQUFBLEVBQUUsTUFBTSxRQUFBLElBQUssSUFBSSxFQUFHLENBQUM7UUFFdEQsTUFBTSxDQUFDLE1BQU0sR0FBRyxHQUFHLENBQUM7S0FDcEI7SUFFRCxPQUFPLEdBQUcsQ0FBQztBQUNaLENBQUM7QUE5QkQsMEJBOEJDIiwiZmlsZSI6ImNzaC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJlYWRWZWN0b3JNYXNrIH0gZnJvbSAnLi9hZGRpdGlvbmFsSW5mbyc7XHJcbmltcG9ydCB7IExheWVyVmVjdG9yTWFzayB9IGZyb20gJy4vcHNkJztcclxuaW1wb3J0IHsgcmVhZFVpbnQzMiwgY2hlY2tTaWduYXR1cmUsIGNyZWF0ZVJlYWRlciwgcmVhZFBhc2NhbFN0cmluZywgcmVhZFVuaWNvZGVTdHJpbmcgfSBmcm9tICcuL3BzZFJlYWRlcic7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENzaCB7XHJcblx0c2hhcGVzOiAoTGF5ZXJWZWN0b3JNYXNrICYge1xyXG5cdFx0bmFtZTogc3RyaW5nO1xyXG5cdFx0aWQ6IHN0cmluZztcclxuXHRcdHdpZHRoOiBudW1iZXI7XHJcblx0XHRoZWlnaHQ6IG51bWJlcjtcclxuXHR9KVtdO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gcmVhZENzaChidWZmZXI6IEFycmF5QnVmZmVyVmlldyk6IENzaCB7XHJcblx0Y29uc3QgcmVhZGVyID0gY3JlYXRlUmVhZGVyKGJ1ZmZlci5idWZmZXIsIGJ1ZmZlci5ieXRlT2Zmc2V0LCBidWZmZXIuYnl0ZUxlbmd0aCk7XHJcblx0Y29uc3QgY3NoOiBDc2ggPSB7IHNoYXBlczogW10gfTtcclxuXHJcblx0Y2hlY2tTaWduYXR1cmUocmVhZGVyLCAnY3VzaCcpO1xyXG5cdGlmIChyZWFkVWludDMyKHJlYWRlcikgIT09IDIpIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB2ZXJzaW9uJyk7XHJcblx0Y29uc3QgY291bnQgPSByZWFkVWludDMyKHJlYWRlcik7XHJcblxyXG5cdGZvciAobGV0IGkgPSAwOyBpIDwgY291bnQ7IGkrKykge1xyXG5cdFx0Y29uc3QgbmFtZSA9IHJlYWRVbmljb2RlU3RyaW5nKHJlYWRlcik7XHJcblx0XHR3aGlsZSAocmVhZGVyLm9mZnNldCAlIDQpIHJlYWRlci5vZmZzZXQrKzsgLy8gcGFkIHRvIDRieXRlIGJvdW5kc1xyXG5cdFx0aWYgKHJlYWRVaW50MzIocmVhZGVyKSAhPT0gMSkgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHNoYXBlIHZlcnNpb24nKTtcclxuXHRcdGNvbnN0IHNpemUgPSByZWFkVWludDMyKHJlYWRlcik7XHJcblx0XHRjb25zdCBlbmQgPSByZWFkZXIub2Zmc2V0ICsgc2l6ZTtcclxuXHRcdGNvbnN0IGlkID0gcmVhZFBhc2NhbFN0cmluZyhyZWFkZXIsIDEpO1xyXG5cdFx0Ly8gdGhpcyBtaWdodCBub3QgYmUgY29ycmVjdCA/Pz9cclxuXHRcdGNvbnN0IHkxID0gcmVhZFVpbnQzMihyZWFkZXIpO1xyXG5cdFx0Y29uc3QgeDEgPSByZWFkVWludDMyKHJlYWRlcik7XHJcblx0XHRjb25zdCB5MiA9IHJlYWRVaW50MzIocmVhZGVyKTtcclxuXHRcdGNvbnN0IHgyID0gcmVhZFVpbnQzMihyZWFkZXIpO1xyXG5cdFx0Y29uc3Qgd2lkdGggPSB4MiAtIHgxO1xyXG5cdFx0Y29uc3QgaGVpZ2h0ID0geTIgLSB5MTtcclxuXHRcdGNvbnN0IG1hc2s6IExheWVyVmVjdG9yTWFzayA9IHsgcGF0aHM6IFtdIH07XHJcblx0XHRyZWFkVmVjdG9yTWFzayhyZWFkZXIsIG1hc2ssIHdpZHRoLCBoZWlnaHQsIGVuZCAtIHJlYWRlci5vZmZzZXQpO1xyXG5cdFx0Y3NoLnNoYXBlcy5wdXNoKHsgbmFtZSwgaWQsIHdpZHRoLCBoZWlnaHQsIC4uLm1hc2sgfSk7XHJcblxyXG5cdFx0cmVhZGVyLm9mZnNldCA9IGVuZDtcclxuXHR9XHJcblxyXG5cdHJldHVybiBjc2g7XHJcbn1cclxuIl0sInNvdXJjZVJvb3QiOiJDOlxcUHJvamVjdHNcXGdpdGh1YlxcYWctcHNkXFxzcmMifQ==

View File

@ -1 +0,0 @@
{"version":3,"file":"csh.js","sourceRoot":"../src/","sources":["csh.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,mDAAkD;AAElD,yCAA4G;AAW5G,SAAgB,OAAO,CAAC,MAAuB;IAC9C,IAAM,MAAM,GAAG,IAAA,wBAAY,EAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;IACjF,IAAM,GAAG,GAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;IAEhC,IAAA,0BAAc,EAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,IAAI,IAAA,sBAAU,EAAC,MAAM,CAAC,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACjE,IAAM,KAAK,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;QAC/B,IAAM,MAAI,GAAG,IAAA,6BAAiB,EAAC,MAAM,CAAC,CAAC;QACvC,OAAO,MAAM,CAAC,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,sBAAsB;QACjE,IAAI,IAAA,sBAAU,EAAC,MAAM,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,uBAAuB,CAAC,CAAC;QACvE,IAAM,IAAI,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;QAChC,IAAM,GAAG,GAAG,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC;QACjC,IAAM,EAAE,GAAG,IAAA,4BAAgB,EAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvC,gCAAgC;QAChC,IAAM,EAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,EAAE,GAAG,IAAA,sBAAU,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAM,KAAK,GAAG,EAAE,GAAG,EAAE,CAAC;QACtB,IAAM,MAAM,GAAG,EAAE,GAAG,EAAE,CAAC;QACvB,IAAM,IAAI,GAAoB,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC;QAC5C,IAAA,+BAAc,EAAC,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACjE,GAAG,CAAC,MAAM,CAAC,IAAI,YAAG,IAAI,QAAA,EAAE,EAAE,IAAA,EAAE,KAAK,OAAA,EAAE,MAAM,QAAA,IAAK,IAAI,EAAG,CAAC;QAEtD,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC;KACpB;IAED,OAAO,GAAG,CAAC;AACZ,CAAC;AA9BD,0BA8BC"}

View File

@ -1,415 +1,390 @@
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'; 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';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export declare function setLogErrors(value: boolean): void; export declare function setLogErrors(value: boolean): void;
export declare function readAsciiStringOrClassId(reader: PsdReader): string; export declare function readAsciiStringOrClassId(reader: PsdReader): string;
export declare function readDescriptorStructure(reader: PsdReader): any; export declare function readDescriptorStructure(reader: PsdReader): any;
export declare function writeDescriptorStructure(writer: PsdWriter, name: string, classId: string, value: any, root: string): void; export declare function writeDescriptorStructure(writer: PsdWriter, name: string, classId: string, value: any, root: string): void;
export declare function readVersionAndDescriptor(reader: PsdReader): any; export declare function readVersionAndDescriptor(reader: PsdReader): any;
export declare function writeVersionAndDescriptor(writer: PsdWriter, name: string, classID: string, descriptor: any, root?: string): void; export declare function writeVersionAndDescriptor(writer: PsdWriter, name: string, classID: string, descriptor: any, root?: string): void;
export type DescriptorUnits = 'Angle' | 'Density' | 'Distance' | 'None' | 'Percent' | 'Pixels' | 'Millimeters' | 'Points' | 'Picas' | 'Inches' | 'Centimeters'; export declare type DescriptorUnits = 'Angle' | 'Density' | 'Distance' | 'None' | 'Percent' | 'Pixels' | 'Millimeters' | 'Points' | 'Picas' | 'Inches' | 'Centimeters';
export interface DescriptorUnitsValue { export interface DescriptorUnitsValue {
units: DescriptorUnits; units: DescriptorUnits;
value: number; value: number;
} }
export type DescriptorColor = { export declare type DescriptorColor = {
'Rd ': number; 'Rd ': number;
'Grn ': number; 'Grn ': number;
'Bl ': number; 'Bl ': number;
} | { } | {
'H ': DescriptorUnitsValue; 'H ': DescriptorUnitsValue;
Strt: number; Strt: number;
Brgh: number; Brgh: number;
} | { } | {
'Cyn ': number; 'Cyn ': number;
Mgnt: number; Mgnt: number;
'Ylw ': number; 'Ylw ': number;
Blck: number; Blck: number;
} | { } | {
'Gry ': number; 'Gry ': number;
} | { } | {
Lmnc: number; Lmnc: number;
'A ': number; 'A ': number;
'B ': number; 'B ': number;
} | { };
redFloat: number; export interface DesciptorPattern {
greenFloat: number; 'Nm ': string;
blueFloat: number; Idnt: string;
}; }
export interface DesciptorPattern { export declare type DesciptorGradient = {
'Nm ': string; 'Nm ': string;
Idnt: string; GrdF: 'GrdF.CstS';
} Intr: number;
export type DesciptorGradient = { Clrs: {
'Nm ': string; 'Clr ': DescriptorColor;
GrdF: 'GrdF.CstS'; Type: 'Clry.UsrS';
Intr: number; Lctn: number;
Clrs: { Mdpn: number;
'Clr ': DescriptorColor; }[];
Type: 'Clry.UsrS'; Trns: {
Lctn: number; Opct: DescriptorUnitsValue;
Mdpn: number; Lctn: number;
}[]; Mdpn: number;
Trns: { }[];
Opct: DescriptorUnitsValue; } | {
Lctn: number; GrdF: 'GrdF.ClNs';
Mdpn: number; Smth: number;
}[]; 'Nm ': string;
} | { ClrS: string;
GrdF: 'GrdF.ClNs'; RndS: number;
Smth: number; VctC?: boolean;
'Nm ': string; ShTr?: boolean;
ClrS: string; 'Mnm ': number[];
RndS: number; 'Mxm ': number[];
VctC?: boolean; };
ShTr?: boolean; export interface DescriptorColorContent {
'Mnm ': number[]; 'Clr ': DescriptorColor;
'Mxm ': number[]; }
}; export interface DescriptorGradientContent {
export interface DescriptorColorContent { Grad: DesciptorGradient;
'Clr ': DescriptorColor; Type: string;
} Dthr?: boolean;
export interface DescriptorGradientContent { Rvrs?: boolean;
Grad: DesciptorGradient; Angl?: DescriptorUnitsValue;
Type: string; 'Scl '?: DescriptorUnitsValue;
Dthr?: boolean; Algn?: boolean;
Rvrs?: boolean; Ofst?: {
Angl?: DescriptorUnitsValue; Hrzn: DescriptorUnitsValue;
'Scl '?: DescriptorUnitsValue; Vrtc: DescriptorUnitsValue;
Algn?: boolean; };
Ofst?: { }
Hrzn: DescriptorUnitsValue; export interface DescriptorPatternContent {
Vrtc: DescriptorUnitsValue; Ptrn: DesciptorPattern;
}; Lnkd?: boolean;
} phase?: {
export interface DescriptorPatternContent { Hrzn: number;
Ptrn: DesciptorPattern; Vrtc: number;
Lnkd?: boolean; };
phase?: { }
Hrzn: number; export declare type DescriptorVectorContent = DescriptorColorContent | DescriptorGradientContent | DescriptorPatternContent;
Vrtc: number; export interface StrokeDescriptor {
}; strokeStyleVersion: number;
} strokeEnabled: boolean;
export type DescriptorVectorContent = DescriptorColorContent | DescriptorGradientContent | DescriptorPatternContent; fillEnabled: boolean;
export interface StrokeDescriptor { strokeStyleLineWidth: DescriptorUnitsValue;
strokeStyleVersion: number; strokeStyleLineDashOffset: DescriptorUnitsValue;
strokeEnabled: boolean; strokeStyleMiterLimit: number;
fillEnabled: boolean; strokeStyleLineCapType: string;
strokeStyleLineWidth: DescriptorUnitsValue; strokeStyleLineJoinType: string;
strokeStyleLineDashOffset: DescriptorUnitsValue; strokeStyleLineAlignment: string;
strokeStyleMiterLimit: number; strokeStyleScaleLock: boolean;
strokeStyleLineCapType: string; strokeStyleStrokeAdjust: boolean;
strokeStyleLineJoinType: string; strokeStyleLineDashSet: DescriptorUnitsValue[];
strokeStyleLineAlignment: string; strokeStyleBlendMode: string;
strokeStyleScaleLock: boolean; strokeStyleOpacity: DescriptorUnitsValue;
strokeStyleStrokeAdjust: boolean; strokeStyleContent: DescriptorVectorContent;
strokeStyleLineDashSet: DescriptorUnitsValue[]; strokeStyleResolution: number;
strokeStyleBlendMode: string; }
strokeStyleOpacity: DescriptorUnitsValue; export interface TextDescriptor {
strokeStyleContent: DescriptorVectorContent; 'Txt ': string;
strokeStyleResolution: number; textGridding: string;
} Ornt: string;
export interface TextDescriptor { AntA: string;
'Txt ': string; TextIndex: number;
textGridding: string; EngineData?: Uint8Array;
Ornt: string; }
AntA: string; export interface WarpDescriptor {
TextIndex: number; warpStyle: string;
EngineData?: Uint8Array; warpValue: number;
} warpPerspective: number;
export interface WarpDescriptor { warpPerspectiveOther: number;
warpStyle: string; warpRotate: string;
warpValue?: number; bounds?: {
warpValues?: number[]; 'Top ': DescriptorUnitsValue;
warpPerspective: number; Left: DescriptorUnitsValue;
warpPerspectiveOther: number; Btom: DescriptorUnitsValue;
warpRotate: string; Rght: DescriptorUnitsValue;
bounds?: { };
'Top ': DescriptorUnitsValue; uOrder: number;
Left: DescriptorUnitsValue; vOrder: number;
Btom: DescriptorUnitsValue; customEnvelopeWarp?: {
Rght: DescriptorUnitsValue; meshPoints: {
}; type: 'Hrzn' | 'Vrtc';
uOrder: number; values: number[];
vOrder: number; }[];
customEnvelopeWarp?: { };
meshPoints: { }
type: 'Hrzn' | 'Vrtc'; export interface QuiltWarpDescriptor extends WarpDescriptor {
values: number[]; deformNumRows: number;
}[]; deformNumCols: number;
}; customEnvelopeWarp: {
} quiltSliceX: {
export interface QuiltWarpDescriptor extends WarpDescriptor { type: 'quiltSliceX';
deformNumRows: number; values: number[];
deformNumCols: number; }[];
customEnvelopeWarp: { quiltSliceY: {
quiltSliceX: { type: 'quiltSliceY';
type: 'quiltSliceX'; values: number[];
values: number[]; }[];
}[]; meshPoints: {
quiltSliceY: { type: 'Hrzn' | 'Vrtc';
type: 'quiltSliceY'; values: number[];
values: number[]; }[];
}[]; };
meshPoints: { }
type: 'Hrzn' | 'Vrtc'; export interface FractionDescriptor {
values: number[]; numerator: number;
}[]; denominator: number;
}; }
} export interface HrznVrtcDescriptor {
export interface FractionDescriptor { Hrzn: number;
numerator: number; Vrtc: number;
denominator: number; }
} export interface FrameDescriptor {
export interface HrznVrtcDescriptor { FrLs: number[];
Hrzn: number; enab?: boolean;
Vrtc: number; IMsk?: {
} Ofst: HrznVrtcDescriptor;
export interface FrameDescriptor { };
FrLs: number[]; VMsk?: {
enab?: boolean; Ofst: HrznVrtcDescriptor;
IMsk?: { };
Ofst: HrznVrtcDescriptor; Ofst?: HrznVrtcDescriptor;
}; FXRf?: HrznVrtcDescriptor;
VMsk?: { Lefx?: Lfx2Descriptor;
Ofst: HrznVrtcDescriptor; blendOptions?: {
}; Opct: DescriptorUnitsValue;
Ofst?: HrznVrtcDescriptor; };
FXRf?: HrznVrtcDescriptor; }
Lefx?: Lfx2Descriptor; export interface FrameListDescriptor {
blendOptions?: { LaID: number;
Opct: DescriptorUnitsValue; LaSt: FrameDescriptor[];
}; }
} export declare function horzVrtcToXY(hv: HrznVrtcDescriptor): {
export interface FrameListDescriptor { x: number;
LaID: number; y: number;
LaSt: FrameDescriptor[]; };
} export declare function xyToHorzVrtc(xy: {
export declare function horzVrtcToXY(hv: HrznVrtcDescriptor): { x: number;
x: number; y: number;
y: number; }): HrznVrtcDescriptor;
}; export declare type TimelineAnimKeyDescriptor = {
export declare function xyToHorzVrtc(xy: { Type: 'keyType.Opct';
x: number; Opct: DescriptorUnitsValue;
y: number; } | {
}): HrznVrtcDescriptor; Type: 'keyType.Trnf';
export type TimelineAnimKeyDescriptor = { 'Scl ': HrznVrtcDescriptor;
Type: 'keyType.Opct'; Skew: HrznVrtcDescriptor;
Opct: DescriptorUnitsValue; rotation: number;
} | { translation: HrznVrtcDescriptor;
Type: 'keyType.Trnf'; } | {
'Scl ': HrznVrtcDescriptor; Type: 'keyType.Pstn';
Skew: HrznVrtcDescriptor; Hrzn: number;
rotation: number; Vrtc: number;
translation: HrznVrtcDescriptor; } | {
} | { Type: 'keyType.sheetStyle';
Type: 'keyType.Pstn'; sheetStyle: {
Hrzn: number; Vrsn: number;
Vrtc: number; Lefx?: Lfx2Descriptor;
} | { blendOptions: {};
Type: 'keyType.sheetStyle'; };
sheetStyle: { } | {
Vrsn: number; Type: 'keyType.globalLighting';
Lefx?: Lfx2Descriptor; gblA: number;
blendOptions: {}; globalAltitude: number;
}; };
} | { export interface TimelineKeyDescriptor {
Type: 'keyType.globalLighting'; Vrsn: 1;
gblA: number; animInterpStyle: 'animInterpStyle.Lnr ' | 'animInterpStyle.hold';
globalAltitude: number; time: FractionDescriptor;
}; animKey: TimelineAnimKeyDescriptor;
export interface TimelineKeyDescriptor { selected: boolean;
Vrsn: 1; }
animInterpStyle: 'animInterpStyle.Lnr ' | 'animInterpStyle.hold'; export interface TimelineTrackDescriptor {
time: FractionDescriptor; trackID: 'stdTrackID.globalLightingTrack' | 'stdTrackID.opacityTrack' | 'stdTrackID.styleTrack' | 'stdTrackID.sheetTransformTrack' | 'stdTrackID.sheetPositionTrack';
animKey: TimelineAnimKeyDescriptor; Vrsn: 1;
selected: boolean; enab: boolean;
} Effc: boolean;
export interface TimelineTrackDescriptor { effectParams?: {
trackID: 'stdTrackID.globalLightingTrack' | 'stdTrackID.opacityTrack' | 'stdTrackID.styleTrack' | 'stdTrackID.sheetTransformTrack' | 'stdTrackID.sheetPositionTrack'; keyList: TimelineKeyDescriptor[];
Vrsn: 1; fillCanvas: boolean;
enab: boolean; zoomOrigin: number;
Effc: boolean; };
effectParams?: { keyList: TimelineKeyDescriptor[];
keyList: TimelineKeyDescriptor[]; }
fillCanvas: boolean; export interface TimeScopeDescriptor {
zoomOrigin: number; Vrsn: 1;
}; Strt: FractionDescriptor;
keyList: TimelineKeyDescriptor[]; duration: FractionDescriptor;
} inTime: FractionDescriptor;
export interface TimeScopeDescriptor { outTime: FractionDescriptor;
Vrsn: 1; }
Strt: FractionDescriptor; export interface TimelineDescriptor {
duration: FractionDescriptor; Vrsn: 1;
inTime: FractionDescriptor; timeScope: TimeScopeDescriptor;
outTime: FractionDescriptor; autoScope: boolean;
} audioLevel: number;
export interface TimelineDescriptor { LyrI: number;
Vrsn: 1; trackList?: TimelineTrackDescriptor[];
timeScope: TimeScopeDescriptor; }
autoScope: boolean; export interface EffectDescriptor extends Partial<DescriptorGradientContent>, Partial<DescriptorPatternContent> {
audioLevel: number; enab?: boolean;
LyrI: number; Styl: string;
trackList?: TimelineTrackDescriptor[]; PntT?: string;
} 'Md '?: string;
export interface EffectDescriptor extends Partial<DescriptorGradientContent>, Partial<DescriptorPatternContent> { Opct?: DescriptorUnitsValue;
enab?: boolean; 'Sz '?: DescriptorUnitsValue;
Styl: string; 'Clr '?: DescriptorColor;
PntT?: string; present?: boolean;
'Md '?: string; showInDialog?: boolean;
Opct?: DescriptorUnitsValue; overprint?: boolean;
'Sz '?: DescriptorUnitsValue; }
'Clr '?: DescriptorColor; export interface Lfx2Descriptor {
present?: boolean; 'Scl '?: DescriptorUnitsValue;
showInDialog?: boolean; masterFXSwitch?: boolean;
overprint?: boolean; DrSh?: EffectDescriptor;
} IrSh?: EffectDescriptor;
export interface Lfx2Descriptor { OrGl?: EffectDescriptor;
'Scl '?: DescriptorUnitsValue; IrGl?: EffectDescriptor;
masterFXSwitch?: boolean; ebbl?: EffectDescriptor;
DrSh?: EffectDescriptor; SoFi?: EffectDescriptor;
IrSh?: EffectDescriptor; patternFill?: EffectDescriptor;
OrGl?: EffectDescriptor; GrFl?: EffectDescriptor;
IrGl?: EffectDescriptor; ChFX?: EffectDescriptor;
ebbl?: EffectDescriptor; FrFX?: EffectDescriptor;
SoFi?: EffectDescriptor; }
patternFill?: EffectDescriptor; export interface LmfxDescriptor {
GrFl?: EffectDescriptor; 'Scl '?: DescriptorUnitsValue;
ChFX?: EffectDescriptor; masterFXSwitch?: boolean;
FrFX?: EffectDescriptor; numModifyingFX?: number;
} OrGl?: EffectDescriptor;
export interface LmfxDescriptor { IrGl?: EffectDescriptor;
'Scl '?: DescriptorUnitsValue; ebbl?: EffectDescriptor;
masterFXSwitch?: boolean; ChFX?: EffectDescriptor;
numModifyingFX?: number; dropShadowMulti?: EffectDescriptor[];
OrGl?: EffectDescriptor; innerShadowMulti?: EffectDescriptor[];
IrGl?: EffectDescriptor; solidFillMulti?: EffectDescriptor[];
ebbl?: EffectDescriptor; gradientFillMulti?: EffectDescriptor[];
ChFX?: EffectDescriptor; frameFXMulti?: EffectDescriptor[];
dropShadowMulti?: EffectDescriptor[]; patternFill?: EffectDescriptor;
innerShadowMulti?: EffectDescriptor[]; }
solidFillMulti?: EffectDescriptor[]; export declare function serializeEffects(e: LayerEffectsInfo, log: boolean, multi: boolean): Lfx2Descriptor & LmfxDescriptor;
gradientFillMulti?: EffectDescriptor[]; export declare function parseEffects(info: Lfx2Descriptor & LmfxDescriptor, log: boolean): LayerEffectsInfo;
frameFXMulti?: EffectDescriptor[]; export declare function parseTrackList(trackList: TimelineTrackDescriptor[], logMissingFeatures: boolean): TimelineTrack[];
patternFill?: EffectDescriptor; export declare function serializeTrackList(tracks: TimelineTrack[]): TimelineTrackDescriptor[];
} export declare function parseVectorContent(descriptor: DescriptorVectorContent): VectorContent;
export declare function serializeEffects(e: LayerEffectsInfo, log: boolean, multi: boolean): Lfx2Descriptor & LmfxDescriptor; export declare function serializeVectorContent(content: VectorContent): {
export declare function parseEffects(info: Lfx2Descriptor & LmfxDescriptor, log: boolean): LayerEffectsInfo; descriptor: DescriptorVectorContent;
export declare function parseTrackList(trackList: TimelineTrackDescriptor[], logMissingFeatures: boolean): TimelineTrack[]; key: string;
export declare function serializeTrackList(tracks: TimelineTrack[]): TimelineTrackDescriptor[]; };
export declare function parseVectorContent(descriptor: DescriptorVectorContent): VectorContent; export declare function parseColor(color: DescriptorColor): Color;
export declare function serializeVectorContent(content: VectorContent): { export declare function serializeColor(color: Color | undefined): DescriptorColor;
descriptor: DescriptorVectorContent; export declare function parseAngle(x: DescriptorUnitsValue): number;
key: string; export declare function parsePercent(x: DescriptorUnitsValue | undefined): number;
}; export declare function parsePercentOrAngle(x: DescriptorUnitsValue | undefined): number;
export declare function parseColor(color: DescriptorColor): Color; export declare function parseUnits({ units, value }: DescriptorUnitsValue): UnitsValue;
export declare function serializeColor(color: Color | undefined): DescriptorColor; export declare function parseUnitsOrNumber(value: DescriptorUnitsValue | number, units?: Units): UnitsValue;
export declare function parseAngle(x: DescriptorUnitsValue): number; export declare function parseUnitsToNumber({ units, value }: DescriptorUnitsValue, expectedUnits: string): number;
export declare function parsePercent(x: DescriptorUnitsValue | undefined): number; export declare function unitsAngle(value: number | undefined): DescriptorUnitsValue;
export declare function parsePercentOrAngle(x: DescriptorUnitsValue | undefined): number; export declare function unitsPercent(value: number | undefined): DescriptorUnitsValue;
export declare function parseUnits({ units, value }: DescriptorUnitsValue): UnitsValue; export declare function unitsValue(x: UnitsValue | undefined, key: string): DescriptorUnitsValue;
export declare function parseUnitsOrNumber(value: DescriptorUnitsValue | number, units?: Units): UnitsValue; export declare const textGridding: {
export declare function parseUnitsToNumber({ units, value }: DescriptorUnitsValue, expectedUnits: string): number; decode: (val: string) => TextGridding;
export declare function unitsAngle(value: number | undefined): DescriptorUnitsValue; encode: (val: TextGridding | undefined) => string;
export declare function unitsPercent(value: number | undefined): DescriptorUnitsValue; };
export declare function unitsValue(x: UnitsValue | undefined, key: string): DescriptorUnitsValue; export declare const Ornt: {
export declare const textGridding: { decode: (val: string) => Orientation;
decode: (val: string) => TextGridding; encode: (val: Orientation | undefined) => string;
encode: (val: TextGridding | undefined) => string; };
}; export declare const Annt: {
export declare const Ornt: { decode: (val: string) => AntiAlias;
decode: (val: string) => Orientation; encode: (val: AntiAlias | undefined) => string;
encode: (val: Orientation | undefined) => string; };
}; export declare const warpStyle: {
export declare const Annt: { decode: (val: string) => WarpStyle;
decode: (val: string) => AntiAlias; encode: (val: WarpStyle | undefined) => string;
encode: (val: AntiAlias | undefined) => string; };
}; export declare const BlnM: {
export declare const warpStyle: { decode: (val: string) => BlendMode;
decode: (val: string) => WarpStyle; encode: (val: BlendMode | undefined) => string;
encode: (val: WarpStyle | undefined) => string; };
}; export declare const BESl: {
export declare const BlnM: { decode: (val: string) => BevelStyle;
decode: (val: string) => BlendMode; encode: (val: BevelStyle | undefined) => string;
encode: (val: BlendMode | undefined) => string; };
}; export declare const bvlT: {
export declare const BESl: { decode: (val: string) => BevelTechnique;
decode: (val: string) => BevelStyle; encode: (val: BevelTechnique | undefined) => string;
encode: (val: BevelStyle | undefined) => string; };
}; export declare const BESs: {
export declare const bvlT: { decode: (val: string) => BevelDirection;
decode: (val: string) => BevelTechnique; encode: (val: BevelDirection | undefined) => string;
encode: (val: BevelTechnique | undefined) => string; };
}; export declare const BETE: {
export declare const BESs: { decode: (val: string) => GlowTechnique;
decode: (val: string) => BevelDirection; encode: (val: GlowTechnique | undefined) => string;
encode: (val: BevelDirection | undefined) => string; };
}; export declare const IGSr: {
export declare const BETE: { decode: (val: string) => GlowSource;
decode: (val: string) => GlowTechnique; encode: (val: GlowSource | undefined) => string;
encode: (val: GlowTechnique | undefined) => string; };
}; export declare const GrdT: {
export declare const IGSr: { decode: (val: string) => GradientStyle;
decode: (val: string) => GlowSource; encode: (val: GradientStyle | undefined) => string;
encode: (val: GlowSource | undefined) => string; };
}; export declare const animInterpStyleEnum: {
export declare const GrdT: { decode: (val: string) => TimelineKeyInterpolation;
decode: (val: string) => GradientStyle; encode: (val: TimelineKeyInterpolation | undefined) => string;
encode: (val: GradientStyle | undefined) => string; };
}; export declare const stdTrackID: {
export declare const animInterpStyleEnum: { decode: (val: string) => TimelineTrackType;
decode: (val: string) => TimelineKeyInterpolation; encode: (val: TimelineTrackType | undefined) => string;
encode: (val: TimelineKeyInterpolation | undefined) => string; };
}; export declare const gradientInterpolationMethodType: {
export declare const stdTrackID: { decode: (val: string) => InterpolationMethod;
decode: (val: string) => TimelineTrackType; encode: (val: InterpolationMethod | undefined) => string;
encode: (val: TimelineTrackType | undefined) => string; };
}; export declare const ClrS: {
export declare const gradientInterpolationMethodType: { decode: (val: string) => "rgb" | "hsb" | "lab";
decode: (val: string) => InterpolationMethod; encode: (val: "rgb" | "hsb" | "lab" | undefined) => string;
encode: (val: InterpolationMethod | undefined) => string; };
}; export declare const FStl: {
export declare const ClrS: { decode: (val: string) => "center" | "inside" | "outside";
decode: (val: string) => "rgb" | "hsb" | "lab"; encode: (val: "center" | "inside" | "outside" | undefined) => string;
encode: (val: "rgb" | "hsb" | "lab" | undefined) => string; };
}; export declare const FrFl: {
export declare const FStl: { decode: (val: string) => "color" | "pattern" | "gradient";
decode: (val: string) => "center" | "inside" | "outside"; encode: (val: "color" | "pattern" | "gradient" | undefined) => string;
encode: (val: "center" | "inside" | "outside" | undefined) => string; };
}; export declare const strokeStyleLineCapType: {
export declare const FrFl: { decode: (val: string) => LineCapType;
decode: (val: string) => "color" | "pattern" | "gradient"; encode: (val: LineCapType | undefined) => string;
encode: (val: "color" | "pattern" | "gradient" | undefined) => string; };
}; export declare const strokeStyleLineJoinType: {
export declare const ESliceType: { decode: (val: string) => LineJoinType;
decode: (val: string) => "image" | "noImage"; encode: (val: LineJoinType | undefined) => string;
encode: (val: "image" | "noImage" | undefined) => string; };
}; export declare const strokeStyleLineAlignment: {
export declare const ESliceHorzAlign: { decode: (val: string) => LineAlignment;
decode: (val: string) => "default"; encode: (val: LineAlignment | undefined) => string;
encode: (val: "default" | undefined) => string; };
};
export declare const ESliceVertAlign: {
decode: (val: string) => "default";
encode: (val: "default" | undefined) => string;
};
export declare const ESliceOrigin: {
decode: (val: string) => "userGenerated" | "autoGenerated" | "layer";
encode: (val: "userGenerated" | "autoGenerated" | "layer" | undefined) => string;
};
export declare const ESliceBGColorType: {
decode: (val: string) => "none" | "color" | "matte";
encode: (val: "none" | "color" | "matte" | undefined) => string;
};
export declare const strokeStyleLineCapType: {
decode: (val: string) => LineCapType;
encode: (val: LineCapType | undefined) => string;
};
export declare const strokeStyleLineJoinType: {
decode: (val: string) => LineJoinType;
encode: (val: LineJoinType | undefined) => string;
};
export declare const strokeStyleLineAlignment: {
decode: (val: string) => LineAlignment;
encode: (val: LineAlignment | undefined) => string;
};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,5 +1,5 @@
import { LayerEffectsInfo } from './psd'; import { LayerEffectsInfo } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export declare function readEffects(reader: PsdReader): LayerEffectsInfo; export declare function readEffects(reader: PsdReader): LayerEffectsInfo;
export declare function writeEffects(writer: PsdWriter, effects: LayerEffectsInfo): void; export declare function writeEffects(writer: PsdWriter, effects: LayerEffectsInfo): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,2 +1,2 @@
export declare function parseEngineData(data: number[] | Uint8Array): any; export declare function parseEngineData(data: number[] | Uint8Array): any;
export declare function serializeEngineData(data: any, condensed?: boolean): Uint8Array; export declare function serializeEngineData(data: any, condensed?: boolean): Uint8Array;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,93 +1,93 @@
import { Layer, BlendMode, LayerColor } from './psd'; import { Layer, BlendMode, LayerColor } from './psd';
export declare const MOCK_HANDLERS = false; export declare const MOCK_HANDLERS = false;
export declare const RAW_IMAGE_DATA = false; export declare const RAW_IMAGE_DATA = false;
export declare const fromBlendMode: { export declare const fromBlendMode: {
[key: string]: string; [key: string]: string;
}; };
export declare const toBlendMode: { export declare const toBlendMode: {
[key: string]: BlendMode; [key: string]: BlendMode;
}; };
export declare const layerColors: LayerColor[]; export declare const layerColors: LayerColor[];
export declare const largeAdditionalInfoKeys: string[]; export declare const largeAdditionalInfoKeys: string[];
export interface Dict { export interface Dict {
[key: string]: string; [key: string]: string;
} }
export declare function revMap(map: Dict): Dict; export declare function revMap(map: Dict): Dict;
export declare function createEnum<T>(prefix: string, def: string, map: Dict): { export declare function createEnum<T>(prefix: string, def: string, map: Dict): {
decode: (val: string) => T; decode: (val: string) => T;
encode: (val: T | undefined) => string; encode: (val: T | undefined) => string;
}; };
export declare const enum ColorSpace { export declare const enum ColorSpace {
RGB = 0, RGB = 0,
HSB = 1, HSB = 1,
CMYK = 2, CMYK = 2,
Lab = 7, Lab = 7,
Grayscale = 8 Grayscale = 8
} }
export declare const enum LayerMaskFlags { export declare const enum LayerMaskFlags {
PositionRelativeToLayer = 1, PositionRelativeToLayer = 1,
LayerMaskDisabled = 2, LayerMaskDisabled = 2,
InvertLayerMaskWhenBlending = 4, InvertLayerMaskWhenBlending = 4,
LayerMaskFromRenderingOtherData = 8, LayerMaskFromRenderingOtherData = 8,
MaskHasParametersAppliedToIt = 16 MaskHasParametersAppliedToIt = 16
} }
export declare const enum MaskParams { export declare const enum MaskParams {
UserMaskDensity = 1, UserMaskDensity = 1,
UserMaskFeather = 2, UserMaskFeather = 2,
VectorMaskDensity = 4, VectorMaskDensity = 4,
VectorMaskFeather = 8 VectorMaskFeather = 8
} }
export declare const enum ChannelID { export declare const enum ChannelID {
Color0 = 0, Color0 = 0,
Color1 = 1, Color1 = 1,
Color2 = 2, Color2 = 2,
Color3 = 3, Color3 = 3,
Transparency = -1, Transparency = -1,
UserMask = -2, UserMask = -2,
RealUserMask = -3 RealUserMask = -3
} }
export declare const enum Compression { export declare const enum Compression {
RawData = 0, RawData = 0,
RleCompressed = 1, RleCompressed = 1,
ZipWithoutPrediction = 2, ZipWithoutPrediction = 2,
ZipWithPrediction = 3 ZipWithPrediction = 3
} }
export interface ChannelData { export interface ChannelData {
channelId: ChannelID; channelId: ChannelID;
compression: Compression; compression: Compression;
buffer: Uint8Array | undefined; buffer: Uint8Array | undefined;
length: number; length: number;
} }
export interface Bounds { export interface Bounds {
top: number; top: number;
left: number; left: number;
right: number; right: number;
bottom: number; bottom: number;
} }
export interface LayerChannelData { export interface LayerChannelData {
layer: Layer; layer: Layer;
channels: ChannelData[]; channels: ChannelData[];
top: number; top: number;
left: number; left: number;
right: number; right: number;
bottom: number; bottom: number;
mask?: Bounds; mask?: Bounds;
} }
export type PixelArray = Uint8ClampedArray | Uint8Array; export declare type PixelArray = Uint8ClampedArray | Uint8Array;
export interface PixelData { export interface PixelData {
data: PixelArray; data: PixelArray;
width: number; width: number;
height: number; height: number;
} }
export declare function offsetForChannel(channelId: ChannelID, cmyk: boolean): number; export declare function offsetForChannel(channelId: ChannelID, cmyk: boolean): number;
export declare function clamp(value: number, min: number, max: number): number; export declare function clamp(value: number, min: number, max: number): number;
export declare function hasAlpha(data: PixelData): boolean; export declare function hasAlpha(data: PixelData): boolean;
export declare function resetImageData({ data }: PixelData): void; export declare function resetImageData({ data }: PixelData): void;
export declare function decodeBitmap(input: PixelArray, output: PixelArray, width: number, height: number): void; export declare function decodeBitmap(input: PixelArray, output: PixelArray, width: number, height: number): void;
export declare function writeDataRaw(data: PixelData, offset: number, width: number, height: number): Uint8Array | undefined; export declare function writeDataRaw(data: PixelData, offset: number, width: number, height: number): Uint8Array | undefined;
export declare function writeDataRLE(buffer: Uint8Array, { data, width, height }: PixelData, offsets: number[], large: boolean): Uint8Array | undefined; export declare function writeDataRLE(buffer: Uint8Array, { data, width, height }: PixelData, offsets: number[], large: boolean): Uint8Array | undefined;
export declare function writeDataZipWithoutPrediction({ data, width, height }: PixelData, offsets: number[]): Uint8Array; export declare function writeDataZipWithoutPrediction({ data, width, height }: PixelData, offsets: number[]): Uint8Array;
export declare let createCanvas: (width: number, height: number) => HTMLCanvasElement; export declare let createCanvas: (width: number, height: number) => HTMLCanvasElement;
export declare let createCanvasFromData: (data: Uint8Array) => HTMLCanvasElement; export declare let createCanvasFromData: (data: Uint8Array) => HTMLCanvasElement;
export declare let createImageData: (width: number, height: number) => ImageData; export declare let createImageData: (width: number, height: number) => ImageData;
export declare function initializeCanvas(createCanvasMethod: (width: number, height: number) => HTMLCanvasElement, createCanvasFromDataMethod?: (data: Uint8Array) => HTMLCanvasElement, createImageDataMethod?: (width: number, height: number) => ImageData): void; export declare function initializeCanvas(createCanvasMethod: (width: number, height: number) => HTMLCanvasElement, createCanvasFromDataMethod?: (data: Uint8Array) => HTMLCanvasElement, createImageDataMethod?: (width: number, height: number) => ImageData): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,13 +1,13 @@
import { ImageResources, ReadOptions } from './psd'; import { ImageResources, ReadOptions } from './psd';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
export interface ResourceHandler { export interface ResourceHandler {
key: number; key: number;
has: (target: ImageResources) => boolean | number; has: (target: ImageResources) => boolean;
read: (reader: PsdReader, target: ImageResources, left: () => number, options: ReadOptions) => void; read: (reader: PsdReader, target: ImageResources, left: () => number, options: ReadOptions) => void;
write: (writer: PsdWriter, target: ImageResources, index: number) => void; write: (writer: PsdWriter, target: ImageResources) => void;
} }
export declare const resourceHandlers: ResourceHandler[]; export declare const resourceHandlers: ResourceHandler[];
export declare const resourceHandlersMap: { export declare const resourceHandlersMap: {
[key: number]: ResourceHandler; [key: number]: ResourceHandler;
}; };

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,20 +1,20 @@
/// <reference types="node" /> /// <reference types="node" />
import { Psd, ReadOptions, WriteOptions } from './psd'; import { Psd, ReadOptions, WriteOptions } from './psd';
import { PsdWriter } from './psdWriter'; import { PsdWriter } from './psdWriter';
import { PsdReader } from './psdReader'; import { PsdReader } from './psdReader';
export * from './abr'; export * from './abr';
export * from './csh'; export * from './csh';
export { initializeCanvas } from './helpers'; export { initializeCanvas } from './helpers';
export * from './psd'; export * from './psd';
import { fromByteArray } from 'base64-js'; import { fromByteArray } from 'base64-js';
export { PsdReader, PsdWriter }; export { PsdReader, PsdWriter };
interface BufferLike { interface BufferLike {
buffer: ArrayBuffer; buffer: ArrayBuffer;
byteOffset: number; byteOffset: number;
byteLength: number; byteLength: number;
} }
export declare const byteArrayToBase64: typeof fromByteArray; export declare const byteArrayToBase64: typeof fromByteArray;
export declare function readPsd(buffer: ArrayBuffer | BufferLike, options?: ReadOptions): Psd; export declare function readPsd(buffer: ArrayBuffer | BufferLike, options?: ReadOptions): Psd;
export declare function writePsd(psd: Psd, options?: WriteOptions): ArrayBuffer; export declare function writePsd(psd: Psd, options?: WriteOptions): ArrayBuffer;
export declare function writePsdUint8Array(psd: Psd, options?: WriteOptions): Uint8Array; export declare function writePsdUint8Array(psd: Psd, options?: WriteOptions): Uint8Array;
export declare function writePsdBuffer(psd: Psd, options?: WriteOptions): Buffer; export declare function writePsdBuffer(psd: Psd, options?: WriteOptions): Buffer;

View File

@ -1,53 +1,54 @@
"use strict"; "use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k; if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k); var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } }; desc = { enumerable: true, get: function() { return m[k]; } };
} }
Object.defineProperty(o, k2, desc); Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) { }) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k; if (k2 === undefined) k2 = k;
o[k2] = m[k]; o[k2] = m[k];
})); }));
var __exportStar = (this && this.__exportStar) || function(m, exports) { var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p); for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
}; };
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0; exports.writePsdBuffer = exports.writePsdUint8Array = exports.writePsd = exports.readPsd = exports.byteArrayToBase64 = exports.initializeCanvas = void 0;
var psdWriter_1 = require("./psdWriter"); var psdWriter_1 = require("./psdWriter");
var psdReader_1 = require("./psdReader"); var psdReader_1 = require("./psdReader");
__exportStar(require("./abr"), exports); __exportStar(require("./abr"), exports);
__exportStar(require("./csh"), exports); __exportStar(require("./csh"), exports);
var helpers_1 = require("./helpers"); var helpers_1 = require("./helpers");
Object.defineProperty(exports, "initializeCanvas", { enumerable: true, get: function () { return helpers_1.initializeCanvas; } }); Object.defineProperty(exports, "initializeCanvas", { enumerable: true, get: function () { return helpers_1.initializeCanvas; } });
__exportStar(require("./psd"), exports); __exportStar(require("./psd"), exports);
var base64_js_1 = require("base64-js"); var base64_js_1 = require("base64-js");
exports.byteArrayToBase64 = base64_js_1.fromByteArray; exports.byteArrayToBase64 = base64_js_1.fromByteArray;
function readPsd(buffer, options) { function readPsd(buffer, options) {
var reader = 'buffer' in buffer ? var reader = 'buffer' in buffer ?
(0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength) : (0, psdReader_1.createReader)(buffer.buffer, buffer.byteOffset, buffer.byteLength) :
(0, psdReader_1.createReader)(buffer); (0, psdReader_1.createReader)(buffer);
return (0, psdReader_1.readPsd)(reader, options); return (0, psdReader_1.readPsd)(reader, options);
} }
exports.readPsd = readPsd; exports.readPsd = readPsd;
function writePsd(psd, options) { function writePsd(psd, options) {
var writer = (0, psdWriter_1.createWriter)(); var writer = (0, psdWriter_1.createWriter)();
(0, psdWriter_1.writePsd)(writer, psd, options); (0, psdWriter_1.writePsd)(writer, psd, options);
return (0, psdWriter_1.getWriterBuffer)(writer); return (0, psdWriter_1.getWriterBuffer)(writer);
} }
exports.writePsd = writePsd; exports.writePsd = writePsd;
function writePsdUint8Array(psd, options) { function writePsdUint8Array(psd, options) {
var writer = (0, psdWriter_1.createWriter)(); var writer = (0, psdWriter_1.createWriter)();
(0, psdWriter_1.writePsd)(writer, psd, options); (0, psdWriter_1.writePsd)(writer, psd, options);
return (0, psdWriter_1.getWriterBufferNoCopy)(writer); return (0, psdWriter_1.getWriterBufferNoCopy)(writer);
} }
exports.writePsdUint8Array = writePsdUint8Array; exports.writePsdUint8Array = writePsdUint8Array;
function writePsdBuffer(psd, options) { function writePsdBuffer(psd, options) {
if (typeof Buffer === 'undefined') { if (typeof Buffer === 'undefined') {
throw new Error('Buffer not supported on this platform'); throw new Error('Buffer not supported on this platform');
} }
return Buffer.from(writePsdUint8Array(psd, options)); return Buffer.from(writePsdUint8Array(psd, options));
} }
exports.writePsdBuffer = writePsdBuffer; exports.writePsdBuffer = writePsdBuffer;
//# sourceMappingURL=index.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EseUNBQTRIO0FBQzVILHlDQUFrRjtBQUNsRix3Q0FBc0I7QUFDdEIsd0NBQXNCO0FBQ3RCLHFDQUE2QztBQUFwQywyR0FBQSxnQkFBZ0IsT0FBQTtBQUN6Qix3Q0FBc0I7QUFDdEIsdUNBQTBDO0FBUzdCLFFBQUEsaUJBQWlCLEdBQUcseUJBQWEsQ0FBQztBQUUvQyxTQUFnQixPQUFPLENBQUMsTUFBZ0MsRUFBRSxPQUFxQjtJQUM5RSxJQUFNLE1BQU0sR0FBRyxRQUFRLElBQUksTUFBTSxDQUFDLENBQUM7UUFDbEMsSUFBQSx3QkFBWSxFQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFVBQVUsRUFBRSxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUNuRSxJQUFBLHdCQUFZLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEIsT0FBTyxJQUFBLG1CQUFlLEVBQUMsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFMRCwwQkFLQztBQUVELFNBQWdCLFFBQVEsQ0FBQyxHQUFRLEVBQUUsT0FBc0I7SUFDeEQsSUFBTSxNQUFNLEdBQUcsSUFBQSx3QkFBWSxHQUFFLENBQUM7SUFDOUIsSUFBQSxvQkFBZ0IsRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZDLE9BQU8sSUFBQSwyQkFBZSxFQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFKRCw0QkFJQztBQUVELFNBQWdCLGtCQUFrQixDQUFDLEdBQVEsRUFBRSxPQUFzQjtJQUNsRSxJQUFNLE1BQU0sR0FBRyxJQUFBLHdCQUFZLEdBQUUsQ0FBQztJQUM5QixJQUFBLG9CQUFnQixFQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDdkMsT0FBTyxJQUFBLGlDQUFxQixFQUFDLE1BQU0sQ0FBQyxDQUFDO0FBQ3RDLENBQUM7QUFKRCxnREFJQztBQUVELFNBQWdCLGNBQWMsQ0FBQyxHQUFRLEVBQUUsT0FBc0I7SUFDOUQsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7UUFDbEMsTUFBTSxJQUFJLEtBQUssQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDO0tBQ3pEO0lBRUQsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0FBQ3RELENBQUM7QUFORCx3Q0FNQyIsImZpbGUiOiJpbmRleC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBzZCwgUmVhZE9wdGlvbnMsIFdyaXRlT3B0aW9ucyB9IGZyb20gJy4vcHNkJztcbmltcG9ydCB7IFBzZFdyaXRlciwgd3JpdGVQc2QgYXMgd3JpdGVQc2RJbnRlcm5hbCwgZ2V0V3JpdGVyQnVmZmVyLCBjcmVhdGVXcml0ZXIsIGdldFdyaXRlckJ1ZmZlck5vQ29weSB9IGZyb20gJy4vcHNkV3JpdGVyJztcbmltcG9ydCB7IFBzZFJlYWRlciwgcmVhZFBzZCBhcyByZWFkUHNkSW50ZXJuYWwsIGNyZWF0ZVJlYWRlciB9IGZyb20gJy4vcHNkUmVhZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vYWJyJztcbmV4cG9ydCAqIGZyb20gJy4vY3NoJztcbmV4cG9ydCB7IGluaXRpYWxpemVDYW52YXMgfSBmcm9tICcuL2hlbHBlcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9wc2QnO1xuaW1wb3J0IHsgZnJvbUJ5dGVBcnJheSB9IGZyb20gJ2Jhc2U2NC1qcyc7XG5leHBvcnQgeyBQc2RSZWFkZXIsIFBzZFdyaXRlciB9O1xuXG5pbnRlcmZhY2UgQnVmZmVyTGlrZSB7XG5cdGJ1ZmZlcjogQXJyYXlCdWZmZXI7XG5cdGJ5dGVPZmZzZXQ6IG51bWJlcjtcblx0Ynl0ZUxlbmd0aDogbnVtYmVyO1xufVxuXG5leHBvcnQgY29uc3QgYnl0ZUFycmF5VG9CYXNlNjQgPSBmcm9tQnl0ZUFycmF5O1xuXG5leHBvcnQgZnVuY3Rpb24gcmVhZFBzZChidWZmZXI6IEFycmF5QnVmZmVyIHwgQnVmZmVyTGlrZSwgb3B0aW9ucz86IFJlYWRPcHRpb25zKTogUHNkIHtcblx0Y29uc3QgcmVhZGVyID0gJ2J1ZmZlcicgaW4gYnVmZmVyID9cblx0XHRjcmVhdGVSZWFkZXIoYnVmZmVyLmJ1ZmZlciwgYnVmZmVyLmJ5dGVPZmZzZXQsIGJ1ZmZlci5ieXRlTGVuZ3RoKSA6XG5cdFx0Y3JlYXRlUmVhZGVyKGJ1ZmZlcik7XG5cdHJldHVybiByZWFkUHNkSW50ZXJuYWwocmVhZGVyLCBvcHRpb25zKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlUHNkKHBzZDogUHNkLCBvcHRpb25zPzogV3JpdGVPcHRpb25zKTogQXJyYXlCdWZmZXIge1xuXHRjb25zdCB3cml0ZXIgPSBjcmVhdGVXcml0ZXIoKTtcblx0d3JpdGVQc2RJbnRlcm5hbCh3cml0ZXIsIHBzZCwgb3B0aW9ucyk7XG5cdHJldHVybiBnZXRXcml0ZXJCdWZmZXIod3JpdGVyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlUHNkVWludDhBcnJheShwc2Q6IFBzZCwgb3B0aW9ucz86IFdyaXRlT3B0aW9ucyk6IFVpbnQ4QXJyYXkge1xuXHRjb25zdCB3cml0ZXIgPSBjcmVhdGVXcml0ZXIoKTtcblx0d3JpdGVQc2RJbnRlcm5hbCh3cml0ZXIsIHBzZCwgb3B0aW9ucyk7XG5cdHJldHVybiBnZXRXcml0ZXJCdWZmZXJOb0NvcHkod3JpdGVyKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHdyaXRlUHNkQnVmZmVyKHBzZDogUHNkLCBvcHRpb25zPzogV3JpdGVPcHRpb25zKTogQnVmZmVyIHtcblx0aWYgKHR5cGVvZiBCdWZmZXIgPT09ICd1bmRlZmluZWQnKSB7XG5cdFx0dGhyb3cgbmV3IEVycm9yKCdCdWZmZXIgbm90IHN1cHBvcnRlZCBvbiB0aGlzIHBsYXRmb3JtJyk7XG5cdH1cblxuXHRyZXR1cm4gQnVmZmVyLmZyb20od3JpdGVQc2RVaW50OEFycmF5KHBzZCwgb3B0aW9ucykpO1xufVxuIl0sInNvdXJjZVJvb3QiOiJDOlxcUHJvamVjdHNcXGdpdGh1YlxcYWctcHNkXFxzcmMifQ==

View File

@ -1 +0,0 @@
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AACA,yCAA4H;AAC5H,yCAAkF;AAClF,wCAAsB;AACtB,wCAAsB;AACtB,qCAA6C;AAApC,2GAAA,gBAAgB,OAAA;AACzB,wCAAsB;AACtB,uCAA0C;AAS7B,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"}

View File

@ -1 +1 @@
export declare function initialize(): void; export declare function initialize(): void;

View File

@ -1,26 +1,27 @@
"use strict"; "use strict";
Object.defineProperty(exports, "__esModule", { value: true }); Object.defineProperty(exports, "__esModule", { value: true });
exports.initialize = void 0; exports.initialize = void 0;
var canvas_1 = require("canvas"); var canvas_1 = require("canvas");
var index_1 = require("./index"); var index_1 = require("./index");
var jpeg_1 = require("./jpeg"); var jpeg_1 = require("./jpeg");
function createCanvasFromData(data) { function createCanvasFromData(data) {
var canvas = (0, canvas_1.createCanvas)(100, 100); var canvas = (0, canvas_1.createCanvas)(100, 100);
try { try {
var context_1 = canvas.getContext('2d'); var context_1 = canvas.getContext('2d');
var imageData = (0, jpeg_1.decodeJpeg)(data, function (w, h) { return context_1.createImageData(w, h); }); var imageData = (0, jpeg_1.decodeJpeg)(data, function (w, h) { return context_1.createImageData(w, h); });
canvas.width = imageData.width; canvas.width = imageData.width;
canvas.height = imageData.height; canvas.height = imageData.height;
context_1.putImageData(imageData, 0, 0); context_1.putImageData(imageData, 0, 0);
} }
catch (e) { catch (e) {
console.error('JPEG decompression error', e.message); console.error('JPEG decompression error', e.message);
} }
return canvas; return canvas;
} }
(0, index_1.initializeCanvas)(canvas_1.createCanvas, createCanvasFromData); (0, index_1.initializeCanvas)(canvas_1.createCanvas, createCanvasFromData);
function initialize() { function initialize() {
(0, index_1.initializeCanvas)(canvas_1.createCanvas, createCanvasFromData); (0, index_1.initializeCanvas)(canvas_1.createCanvas, createCanvasFromData);
} }
exports.initialize = initialize; exports.initialize = initialize;
//# sourceMappingURL=initializeCanvas.js.map
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImluaXRpYWxpemVDYW52YXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaUNBQXNDO0FBQ3RDLGlDQUEyQztBQUMzQywrQkFBb0M7QUFFcEMsU0FBUyxvQkFBb0IsQ0FBQyxJQUFnQjtJQUM3QyxJQUFNLE1BQU0sR0FBRyxJQUFBLHFCQUFZLEVBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBRXRDLElBQUk7UUFDSCxJQUFNLFNBQU8sR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBRSxDQUFDO1FBQ3pDLElBQU0sU0FBUyxHQUFHLElBQUEsaUJBQVUsRUFBQyxJQUFJLEVBQUUsVUFBQyxDQUFDLEVBQUUsQ0FBQyxJQUFLLE9BQUEsU0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQTdCLENBQTZCLENBQUMsQ0FBQztRQUM1RSxNQUFNLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxLQUFLLENBQUM7UUFDL0IsTUFBTSxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDO1FBQ2pDLFNBQU8sQ0FBQyxZQUFZLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztLQUN0QztJQUFDLE9BQU8sQ0FBTSxFQUFFO1FBQ2hCLE9BQU8sQ0FBQyxLQUFLLENBQUMsMEJBQTBCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0tBQ3JEO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDZixDQUFDO0FBRUQsSUFBQSx3QkFBZ0IsRUFBQyxxQkFBWSxFQUFFLG9CQUFvQixDQUFDLENBQUM7QUFFckQsU0FBZ0IsVUFBVTtJQUN6QixJQUFBLHdCQUFnQixFQUFDLHFCQUFZLEVBQUUsb0JBQW9CLENBQUMsQ0FBQztBQUN0RCxDQUFDO0FBRkQsZ0NBRUMiLCJmaWxlIjoiaW5pdGlhbGl6ZUNhbnZhcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNyZWF0ZUNhbnZhcyB9IGZyb20gJ2NhbnZhcyc7XHJcbmltcG9ydCB7IGluaXRpYWxpemVDYW52YXMgfSBmcm9tICcuL2luZGV4JztcclxuaW1wb3J0IHsgZGVjb2RlSnBlZyB9IGZyb20gJy4vanBlZyc7XHJcblxyXG5mdW5jdGlvbiBjcmVhdGVDYW52YXNGcm9tRGF0YShkYXRhOiBVaW50OEFycmF5KSB7XHJcblx0Y29uc3QgY2FudmFzID0gY3JlYXRlQ2FudmFzKDEwMCwgMTAwKTtcclxuXHJcblx0dHJ5IHtcclxuXHRcdGNvbnN0IGNvbnRleHQgPSBjYW52YXMuZ2V0Q29udGV4dCgnMmQnKSE7XHJcblx0XHRjb25zdCBpbWFnZURhdGEgPSBkZWNvZGVKcGVnKGRhdGEsICh3LCBoKSA9PiBjb250ZXh0LmNyZWF0ZUltYWdlRGF0YSh3LCBoKSk7XHJcblx0XHRjYW52YXMud2lkdGggPSBpbWFnZURhdGEud2lkdGg7XHJcblx0XHRjYW52YXMuaGVpZ2h0ID0gaW1hZ2VEYXRhLmhlaWdodDtcclxuXHRcdGNvbnRleHQucHV0SW1hZ2VEYXRhKGltYWdlRGF0YSwgMCwgMCk7XHJcblx0fSBjYXRjaCAoZTogYW55KSB7XHJcblx0XHRjb25zb2xlLmVycm9yKCdKUEVHIGRlY29tcHJlc3Npb24gZXJyb3InLCBlLm1lc3NhZ2UpO1xyXG5cdH1cclxuXHJcblx0cmV0dXJuIGNhbnZhcztcclxufVxyXG5cclxuaW5pdGlhbGl6ZUNhbnZhcyhjcmVhdGVDYW52YXMsIGNyZWF0ZUNhbnZhc0Zyb21EYXRhKTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBpbml0aWFsaXplKCkge1xyXG5cdGluaXRpYWxpemVDYW52YXMoY3JlYXRlQ2FudmFzLCBjcmVhdGVDYW52YXNGcm9tRGF0YSk7XHJcbn1cclxuIl0sInNvdXJjZVJvb3QiOiJDOlxcUHJvamVjdHNcXGdpdGh1YlxcYWctcHNkXFxzcmMifQ==

View File

@ -1 +0,0 @@
{"version":3,"file":"initializeCanvas.js","sourceRoot":"../src/","sources":["initializeCanvas.ts"],"names":[],"mappings":";;;AAAA,iCAAsC;AACtC,iCAA2C;AAC3C,+BAAoC;AAEpC,SAAS,oBAAoB,CAAC,IAAgB;IAC7C,IAAM,MAAM,GAAG,IAAA,qBAAY,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,CAAC,EAA7B,CAA6B,CAAC,CAAC;QAC5E,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;AAED,IAAA,wBAAgB,EAAC,qBAAY,EAAE,oBAAoB,CAAC,CAAC;AAErD,SAAgB,UAAU;IACzB,IAAA,wBAAgB,EAAC,qBAAY,EAAE,oBAAoB,CAAC,CAAC;AACtD,CAAC;AAFD,gCAEC"}

View File

@ -1 +1 @@
export declare function decodeJpeg(encoded: Uint8Array, createImageData: (width: number, height: number) => ImageData): ImageData; export declare function decodeJpeg(encoded: Uint8Array, createImageData: (width: number, height: number) => ImageData): ImageData;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@ -1 +0,0 @@
{"version":3,"file":"psd.js","sourceRoot":"../src/","sources":["psd.ts"],"names":[],"mappings":";;;AAMA,IAAkB,SASjB;AATD,WAAkB,SAAS;IAC1B,6CAAU,CAAA;IACV,mDAAa,CAAA;IACb,+CAAW,CAAA;IACX,uCAAO,CAAA;IACP,yCAAQ,CAAA;IACR,yDAAgB,CAAA;IAChB,+CAAW,CAAA;IACX,uCAAO,CAAA;AACR,CAAC,EATiB,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAS1B;AAED,IAAkB,kBAKjB;AALD,WAAkB,kBAAkB;IACnC,6DAAS,CAAA;IACT,uEAAc,CAAA;IACd,2EAAgB,CAAA;IAChB,+FAA0B,CAAA;AAC3B,CAAC,EALiB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAKnC"}

View File

@ -1,36 +1,36 @@
import { Psd, ColorMode, ReadOptions, Color, PatternInfo } from './psd'; import { Psd, ColorMode, ReadOptions, Color, PatternInfo } from './psd';
import { PixelData } from './helpers'; import { PixelData } from './helpers';
export declare const supportedColorModes: ColorMode[]; export declare const supportedColorModes: ColorMode[];
export interface PsdReader { export interface PsdReader {
offset: number; offset: number;
view: DataView; view: DataView;
strict: boolean; strict: boolean;
debug: boolean; debug: boolean;
} }
export declare function createReader(buffer: ArrayBuffer, offset?: number, length?: number): PsdReader; export declare function createReader(buffer: ArrayBuffer, offset?: number, length?: number): PsdReader;
export declare function warnOrThrow(reader: PsdReader, message: string): void; export declare function warnOrThrow(reader: PsdReader, message: string): void;
export declare function readUint8(reader: PsdReader): number; export declare function readUint8(reader: PsdReader): number;
export declare function peekUint8(reader: PsdReader): number; export declare function peekUint8(reader: PsdReader): number;
export declare function readInt16(reader: PsdReader): number; export declare function readInt16(reader: PsdReader): number;
export declare function readUint16(reader: PsdReader): number; export declare function readUint16(reader: PsdReader): number;
export declare function readInt32(reader: PsdReader): number; export declare function readInt32(reader: PsdReader): number;
export declare function readInt32LE(reader: PsdReader): number; export declare function readInt32LE(reader: PsdReader): number;
export declare function readUint32(reader: PsdReader): number; export declare function readUint32(reader: PsdReader): number;
export declare function readFloat32(reader: PsdReader): number; export declare function readFloat32(reader: PsdReader): number;
export declare function readFloat64(reader: PsdReader): number; export declare function readFloat64(reader: PsdReader): number;
export declare function readFixedPoint32(reader: PsdReader): number; export declare function readFixedPoint32(reader: PsdReader): number;
export declare function readFixedPointPath32(reader: PsdReader): number; export declare function readFixedPointPath32(reader: PsdReader): number;
export declare function readBytes(reader: PsdReader, length: number): Uint8Array; export declare function readBytes(reader: PsdReader, length: number): Uint8Array;
export declare function readSignature(reader: PsdReader): string; export declare function readSignature(reader: PsdReader): string;
export declare function readPascalString(reader: PsdReader, padTo: number): string; export declare function readPascalString(reader: PsdReader, padTo: number): string;
export declare function readUnicodeString(reader: PsdReader): string; export declare function readUnicodeString(reader: PsdReader): string;
export declare function readUnicodeStringWithLength(reader: PsdReader, length: number): string; export declare function readUnicodeStringWithLength(reader: PsdReader, length: number): string;
export declare function readAsciiString(reader: PsdReader, length: number): string; export declare function readAsciiString(reader: PsdReader, length: number): string;
export declare function skipBytes(reader: PsdReader, count: number): void; export declare function skipBytes(reader: PsdReader, count: number): void;
export declare function checkSignature(reader: PsdReader, a: string, b?: string): void; export declare function checkSignature(reader: PsdReader, a: string, b?: string): void;
export declare function readPsd(reader: PsdReader, options?: ReadOptions): Psd; export declare function readPsd(reader: PsdReader, options?: ReadOptions): Psd;
export declare function readDataZipWithoutPrediction(reader: PsdReader, length: number, pixelData: PixelData | undefined, width: number, height: number, step: number, offset: number): void; export declare function readDataZipWithoutPrediction(reader: PsdReader, length: number, pixelData: PixelData | undefined, width: number, height: number, step: number, offset: number): void;
export declare function readDataRLE(reader: PsdReader, pixelData: PixelData | undefined, _width: number, height: number, step: number, offsets: number[], large: boolean): void; export declare function readDataRLE(reader: PsdReader, pixelData: PixelData | undefined, _width: number, height: number, step: number, offsets: number[], large: boolean): void;
export declare function readSection<T>(reader: PsdReader, round: number, func: (left: () => number) => T, skipEmpty?: boolean, eightBytes?: boolean): T | undefined; export declare function readSection<T>(reader: PsdReader, round: number, func: (left: () => number) => T, skipEmpty?: boolean, eightBytes?: boolean): T | undefined;
export declare function readColor(reader: PsdReader): Color; export declare function readColor(reader: PsdReader): Color;
export declare function readPattern(reader: PsdReader): PatternInfo; export declare function readPattern(reader: PsdReader): PatternInfo;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,27 +1,27 @@
import { Psd, WriteOptions, Color } from './psd'; import { Psd, WriteOptions, Color } from './psd';
export interface PsdWriter { export interface PsdWriter {
offset: number; offset: number;
buffer: ArrayBuffer; buffer: ArrayBuffer;
view: DataView; view: DataView;
} }
export declare function createWriter(size?: number): PsdWriter; export declare function createWriter(size?: number): PsdWriter;
export declare function getWriterBuffer(writer: PsdWriter): ArrayBuffer; export declare function getWriterBuffer(writer: PsdWriter): ArrayBuffer;
export declare function getWriterBufferNoCopy(writer: PsdWriter): Uint8Array; export declare function getWriterBufferNoCopy(writer: PsdWriter): Uint8Array;
export declare function writeUint8(writer: PsdWriter, value: number): void; export declare function writeUint8(writer: PsdWriter, value: number): void;
export declare function writeInt16(writer: PsdWriter, value: number): void; export declare function writeInt16(writer: PsdWriter, value: number): void;
export declare function writeUint16(writer: PsdWriter, value: number): void; export declare function writeUint16(writer: PsdWriter, value: number): void;
export declare function writeInt32(writer: PsdWriter, value: number): void; export declare function writeInt32(writer: PsdWriter, value: number): void;
export declare function writeUint32(writer: PsdWriter, value: number): void; export declare function writeUint32(writer: PsdWriter, value: number): void;
export declare function writeFloat32(writer: PsdWriter, value: number): void; export declare function writeFloat32(writer: PsdWriter, value: number): void;
export declare function writeFloat64(writer: PsdWriter, value: number): void; export declare function writeFloat64(writer: PsdWriter, value: number): void;
export declare function writeFixedPoint32(writer: PsdWriter, value: number): void; export declare function writeFixedPoint32(writer: PsdWriter, value: number): void;
export declare function writeFixedPointPath32(writer: PsdWriter, value: number): void; export declare function writeFixedPointPath32(writer: PsdWriter, value: number): void;
export declare function writeBytes(writer: PsdWriter, buffer: Uint8Array | undefined): void; export declare function writeBytes(writer: PsdWriter, buffer: Uint8Array | undefined): void;
export declare function writeZeros(writer: PsdWriter, count: number): void; export declare function writeZeros(writer: PsdWriter, count: number): void;
export declare function writeSignature(writer: PsdWriter, signature: string): void; export declare function writeSignature(writer: PsdWriter, signature: string): void;
export declare function writePascalString(writer: PsdWriter, text: string, padTo: number): void; export declare function writePascalString(writer: PsdWriter, text: string, padTo: number): void;
export declare function writeUnicodeString(writer: PsdWriter, text: string): void; export declare function writeUnicodeString(writer: PsdWriter, text: string): void;
export declare function writeUnicodeStringWithPadding(writer: PsdWriter, text: string): void; export declare function writeUnicodeStringWithPadding(writer: PsdWriter, text: string): void;
export declare function writeSection(writer: PsdWriter, round: number, func: () => void, writeTotalLength?: boolean, large?: boolean): void; export declare function writeSection(writer: PsdWriter, round: number, func: () => void, writeTotalLength?: boolean, large?: boolean): void;
export declare function writePsd(writer: PsdWriter, psd: Psd, options?: WriteOptions): void; export declare function writePsd(writer: PsdWriter, psd: Psd, options?: WriteOptions): void;
export declare function writeColor(writer: PsdWriter, color: Color | undefined): void; export declare function writeColor(writer: PsdWriter, color: Color | undefined): void;

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -1,168 +1,168 @@
import { LayerTextData } from './psd'; import { LayerTextData } from './psd';
interface Adjustments { interface Adjustments {
Axis: number[]; Axis: number[];
XY: number[]; XY: number[];
} }
interface TypeValues { interface TypeValues {
Type: number; Type: number;
Values: number[]; Values: number[];
} }
interface ParagraphProperties { interface ParagraphProperties {
Justification?: number; Justification?: number;
FirstLineIndent?: number; FirstLineIndent?: number;
StartIndent?: number; StartIndent?: number;
EndIndent?: number; EndIndent?: number;
SpaceBefore?: number; SpaceBefore?: number;
SpaceAfter?: number; SpaceAfter?: number;
AutoHyphenate?: boolean; AutoHyphenate?: boolean;
HyphenatedWordSize?: number; HyphenatedWordSize?: number;
PreHyphen?: number; PreHyphen?: number;
PostHyphen?: number; PostHyphen?: number;
ConsecutiveHyphens?: number; ConsecutiveHyphens?: number;
Zone?: number; Zone?: number;
WordSpacing?: number[]; WordSpacing?: number[];
LetterSpacing?: number[]; LetterSpacing?: number[];
GlyphSpacing?: number[]; GlyphSpacing?: number[];
AutoLeading?: number; AutoLeading?: number;
LeadingType?: number; LeadingType?: number;
Hanging?: boolean; Hanging?: boolean;
Burasagari?: boolean; Burasagari?: boolean;
KinsokuOrder?: number; KinsokuOrder?: number;
EveryLineComposer?: boolean; EveryLineComposer?: boolean;
} }
interface ParagraphSheet { interface ParagraphSheet {
Name?: string; Name?: string;
DefaultStyleSheet: number; DefaultStyleSheet: number;
Properties: ParagraphProperties; Properties: ParagraphProperties;
} }
interface StyleSheetData { interface StyleSheetData {
Font?: number; Font?: number;
FontSize?: number; FontSize?: number;
FauxBold?: boolean; FauxBold?: boolean;
FauxItalic?: boolean; FauxItalic?: boolean;
AutoLeading?: boolean; AutoLeading?: boolean;
Leading?: number; Leading?: number;
HorizontalScale?: number; HorizontalScale?: number;
VerticalScale?: number; VerticalScale?: number;
Tracking?: number; Tracking?: number;
AutoKerning?: boolean; AutoKerning?: boolean;
Kerning?: number; Kerning?: number;
BaselineShift?: number; BaselineShift?: number;
FontCaps?: number; FontCaps?: number;
FontBaseline?: number; FontBaseline?: number;
Underline?: boolean; Underline?: boolean;
Strikethrough?: boolean; Strikethrough?: boolean;
Ligatures?: boolean; Ligatures?: boolean;
DLigatures?: boolean; DLigatures?: boolean;
BaselineDirection?: number; BaselineDirection?: number;
Tsume?: number; Tsume?: number;
StyleRunAlignment?: number; StyleRunAlignment?: number;
Language?: number; Language?: number;
NoBreak?: boolean; NoBreak?: boolean;
FillColor?: TypeValues; FillColor?: TypeValues;
StrokeColor?: TypeValues; StrokeColor?: TypeValues;
FillFlag?: boolean; FillFlag?: boolean;
StrokeFlag?: boolean; StrokeFlag?: boolean;
FillFirst?: boolean; FillFirst?: boolean;
YUnderline?: number; YUnderline?: number;
OutlineWidth?: number; OutlineWidth?: number;
CharacterDirection?: number; CharacterDirection?: number;
HindiNumbers?: boolean; HindiNumbers?: boolean;
Kashida?: number; Kashida?: number;
DiacriticPos?: number; DiacriticPos?: number;
} }
interface FontSet { interface FontSet {
Name: string; Name: string;
Script: number; Script: number;
FontType: number; FontType: number;
Synthetic: number; Synthetic: number;
} }
interface ResourceDict { interface ResourceDict {
KinsokuSet: any[]; KinsokuSet: any[];
MojiKumiSet: any[]; MojiKumiSet: any[];
TheNormalStyleSheet: number; TheNormalStyleSheet: number;
TheNormalParagraphSheet: number; TheNormalParagraphSheet: number;
ParagraphSheetSet: ParagraphSheet[]; ParagraphSheetSet: ParagraphSheet[];
StyleSheetSet: { StyleSheetSet: {
Name: string; Name: string;
StyleSheetData: StyleSheetData; StyleSheetData: StyleSheetData;
}[]; }[];
FontSet: FontSet[]; FontSet: FontSet[];
SuperscriptSize: number; SuperscriptSize: number;
SuperscriptPosition: number; SuperscriptPosition: number;
SubscriptSize: number; SubscriptSize: number;
SubscriptPosition: number; SubscriptPosition: number;
SmallCapSize: number; SmallCapSize: number;
} }
interface ParagraphRun { interface ParagraphRun {
ParagraphSheet: ParagraphSheet; ParagraphSheet: ParagraphSheet;
Adjustments: Adjustments; Adjustments: Adjustments;
} }
interface StyleRun { interface StyleRun {
StyleSheet: { StyleSheet: {
StyleSheetData: StyleSheetData; StyleSheetData: StyleSheetData;
}; };
} }
interface PhotoshopNode { interface PhotoshopNode {
ShapeType?: number; ShapeType?: number;
PointBase?: number[]; PointBase?: number[];
BoxBounds?: number[]; BoxBounds?: number[];
Base?: { Base?: {
ShapeType: number; ShapeType: number;
TransformPoint0: number[]; TransformPoint0: number[];
TransformPoint1: number[]; TransformPoint1: number[];
TransformPoint2: number[]; TransformPoint2: number[];
}; };
} }
interface EngineData { interface EngineData {
EngineDict: { EngineDict: {
Editor: { Editor: {
Text: string; Text: string;
}; };
ParagraphRun: { ParagraphRun: {
DefaultRunData: ParagraphRun; DefaultRunData: ParagraphRun;
RunArray: ParagraphRun[]; RunArray: ParagraphRun[];
RunLengthArray: number[]; RunLengthArray: number[];
IsJoinable: number; IsJoinable: number;
}; };
StyleRun: { StyleRun: {
DefaultRunData: StyleRun; DefaultRunData: StyleRun;
RunArray: StyleRun[]; RunArray: StyleRun[];
RunLengthArray: number[]; RunLengthArray: number[];
IsJoinable: number; IsJoinable: number;
}; };
GridInfo: { GridInfo: {
GridIsOn: boolean; GridIsOn: boolean;
ShowGrid: boolean; ShowGrid: boolean;
GridSize: number; GridSize: number;
GridLeading: number; GridLeading: number;
GridColor: TypeValues; GridColor: TypeValues;
GridLeadingFillColor: TypeValues; GridLeadingFillColor: TypeValues;
AlignLineHeightToGridFlags: boolean; AlignLineHeightToGridFlags: boolean;
}; };
AntiAlias: number; AntiAlias: number;
UseFractionalGlyphWidths: boolean; UseFractionalGlyphWidths: boolean;
Rendered?: { Rendered?: {
Version: number; Version: number;
Shapes?: { Shapes?: {
WritingDirection: number; WritingDirection: number;
Children?: { Children?: {
ShapeType?: number; ShapeType?: number;
Procession: number; Procession: number;
Lines: { Lines: {
WritingDirection: number; WritingDirection: number;
Children: any[]; Children: any[];
}; };
Cookie?: { Cookie?: {
Photoshop?: PhotoshopNode; Photoshop?: PhotoshopNode;
}; };
}[]; }[];
}; };
}; };
}; };
ResourceDict: ResourceDict; ResourceDict: ResourceDict;
DocumentResources: ResourceDict; DocumentResources: ResourceDict;
} }
export declare function decodeEngineData(engineData: EngineData): LayerTextData; export declare function decodeEngineData(engineData: EngineData): LayerTextData;
export declare function encodeEngineData(data: LayerTextData): EngineData; export declare function encodeEngineData(data: LayerTextData): EngineData;
export {}; export {};

Some files were not shown because too many files have changed in this diff Show More