There are several types of layer information that have been added in Photoshop 4.0 and later.These exist at the end of the layer records structure (see the last row of See Layer records). They have thefollowing structure:
The following sections describe the different types of data available, their keys and theirformat.
The data for the adjustment layer is the same as the load file formats for each format. SeeSee Additional File Formats forinformation.
Effects layer, solid fill (added in Photoshop 7.0) Length | Description |
---|
4 | Size: 34 |
4 | Version: 2 |
4 | Key for blend mode |
10 | Color space |
1 | Opacity |
1 | Enabled |
10 | Native color space |
Type Tool Info (Photoshop 5.0 and 5.5 only)
Has been superseded in Photoshop 6.0 and beyond by a different structure with the key 'TySh' (see See Type tool object setting (Photoshop 6.0) See Type tool object setting ).
Key is 'tySh' . Data is as follows:
Type tool Info Length | Description |
---|
2 | Version ( = 1) |
48 | 6 * 8 double precision numbers for the transform information |
Font information |
2 | Version ( = 6) |
2 | Count of faces |
The next 8 fields are repeated for each count specified above |
2 | Mark value |
4 | Font type data |
Variable | Pascal string of font name |
Variable | Pascal string of font family name |
Variable | Pascal string of font style name |
2 | Script value |
4 | Number of design axes vector to follow |
4 | Design vector value |
Style information |
2 | Count of styles |
The next 10 fields are repeated for each count specified above |
2 | Mark value |
2 | Face mark value |
4 | Size value |
4 | Tracking value |
4 | Kerning value |
4 | Leading value |
4 | Base shift value |
1 | Auto kern on/off |
1 | Only present in version <= 5 |
1 | Rotate up/down |
Text information |
2 | Type value |
4 | Scaling factor value |
4 | Sharacter count value |
4 | Horizontal placement |
4 | Vertical placement |
4 | Select start value |
4 | Select end value |
2 | Line count, i.e. the number of items to follow. |
The next 5 fields are repeated for each item in line count. |
4 | Character count value |
2 | Orientation value |
2 | Alignment value |
2 | Actual character as a double byte character |
2 | Style value |
Color information |
2 | Color space value |
8 | 4 * 2 byte color component |
1 | Anti alias on/off |
Unicode layer name (Photoshop 5.0)
Key is 'luni' . Data is as follows:
Layer ID (Photoshop 5.0)
Key is 'lyid' .
Layer ID Length | Description |
---|
4 | Signature: '8BIM' |
4 | Key: 'lyid' |
4 | Length: 4 |
4 | ID. |
Object-based effects layer info (Photoshop 6.0)
Key is 'lfx2' . Data is as follows:
Object Based Effects Layer info Length | Description |
---|
4 | Object effects version: 0 |
4 | Descriptor version ( = 16 for Photoshop 6.0). |
Variable | Descriptor (see See Descriptor structure) |
Patterns (Photoshop 6.0 and CS (8.0))
This is a list of patterns. Key is 'Patt', 'Pat2' or 'Pat3' . Datais as follows:
PatternsLength | Description |
---|
The following is repeated for each pattern. |
4 | Length of this pattern |
4 | Version ( =1) |
4 | The image mode of the file. Supported values are: Bitmap = 0; Grayscale = 1;Indexed = 2; RGB = 3; CMYK = 4; Multichannel = 7; Duotone = 8; Lab = 9. |
4 | Point: vertical, 2 bytes and horizontal, 2 bytes |
Variable | Name: Unicode string |
Variable | Unique ID for this pattern: Pascal string |
Variable | Index color table (256 * 3 RGB values): only present when image mode is indexedcolor |
Variable | Pattern data as Virtual Memory Array List |
Virtual Memory Array ListLength | Description |
---|
4 | Version ( =3) |
4 | Length |
16 | Rectangle: top, left, bottom, right |
4 | Number of channels |
The following is a virtual memory array, repeated for thenumber of channels + one for a user mask + one for a sheet mask. |
4 | Boolean indicating whether array is written, skip following data if 0. |
4 | Length, skip following data if 0. |
4 | Pixel depth: 1, 8, 16 or 32 |
16 | Rectangle: top, left, bottom, right |
2 | Pixel depth: 1, 8, 16 or 32 |
1 | Compression mode of data to follow. 1 is zip. |
Variable | Actual data based on parameters and compression |
Annotations (Photoshop 6.0)
Key is 'Anno' . Data is as follows:
Annotations Length | Description |
---|
2 | Major version ( = 2) |
2 | Minor version. ( = 1) |
4 | Count of annotations to follow |
Following is repeated for each annotation |
4 | Length of this annotation |
4 | Annotation type: either text( 'txtA' ) or sound ( 'sndA' ). |
1 | Is the annotation open |
1 | Flags. |
2 | Optional blocks. ( =1 for Photoshop 6.0) |
16 | Rectangle of icon location: top, left, bottom and right. |
16 | Rectangle of popup locations: top, left, bottom and right |
10 | 2 bytes for space followed by 4 * 2 byte color component |
Variable | Pascal string of author's name aligned to 2 bytes |
Variable | Pascal string of name aligned to 2 bytes |
Variable | Pascal string of the mod Date aligned to 2 bytes |
4 | Length of the following 3 fields including this field |
4 | ' txtC ' or ' sndM '. Either text orsound |
4 | Length of the next field |
Variable | Actual data for this annotation. The text is an ASCII or Unicode string; the sound annotation isdocumented in the PDF Reference , available at http://Partners.adobe.com/asn/developer/acrosdk/docs.html#filefmtspecs |
Variable | Padding to align to multiple of 4 bytes |
Blend clipping elements (Photoshop 6.0)
Key is 'clbl' . Data is as follows:
Blend clipping elements Length | Description |
---|
1 | Blend clipped elements: boolean |
3 | Padding |
Blend interior elements (Photoshop 6.0)
Key is'infx' . Data is as follows:
Blend interior elements Length | Description |
---|
1 | Blend interior elements: boolean |
3 | Padding |
Knockout setting (Photoshop 6.0)
Key is 'knko' . Data is as follows:
Knockout setting Length | Description |
---|
1 | Knockout: boolean |
3 | Padding |
Protected setting (Photoshop 6.0)
Key is 'lspf' . Data is as follows:
Protected setting Length | Description |
---|
4 | Protection flags: bits 0 - 2 are used for Photoshop 6.0. Transparency, compositeand position respectively. |
Sheet color setting (Photoshop 6.0)
Key is 'lclr' . Data is as follows:
Sheet Color setting Length | Description |
---|
4 * 2 | Color. Only the first color setting is used for Photoshop 6.0; the rest are zeros |
Reference point (Photoshop 6.0)
Key is 'fxrp' . Data is as follows:
Reference point Length | Description |
---|
2 * 8 | 2 double values for the reference point |
Gradient settings (Photoshop 6.0)
Key is 'grdm' . Data is as follows:
Gradient settings Length | Description |
---|
2 | Version ( =1 for Photoshop 6.0) |
1 | Is gradient reversed |
1 | Is gradient dithered |
Variable | Name of the gradient: Unicode string, padded |
2 | Number of color stops to follow |
Following is repeated for each color stop |
4 | Location of color stop |
4 | Midpoint of color stop |
2 | Mode for the color to follow |
4 * 2 | Actual color for the stop |
2 | Number of transparency stops to follow |
Following is repeated for each transparency stop |
4 | Location of transparency stop |
4 | Midpoint of transparency stop |
2 | Opacity of transparency stop |
2 | Expansion count ( = 2 for Photoshop 6.0) |
2 | Interpolation if length above is non-zero |
2 | Length (= 32 for Photoshop 6.0) |
2 | Mode for this gradient |
4 | Random number seed |
2 | Flag for showing transparency |
2 | Flag for using vector color |
4 | Roughness factor |
2 | Color model |
4 * 2 | Minimum color values |
4 * 2 | Maximum color values |
2 | Dummy: not used in Photoshop 6.0 |
Section divider setting (Photoshop 6.0)
Key is 'lsct' . Data is as follows:
Section Divider setting Length | Description |
---|
4 | Type. 4 possible values, 0 = any other type of layer, 1 = open"folder", 2 = closed "folder", 3 = bounding section divider, hidden in the UI |
Following is only present if length >= 12 |
4 | Signature: '8BIM' |
4 | Key. See blend mode keys in See Layer records. |
Following is only present if length >= 16 |
4 | Sub type. 0 = normal, 1 = scene group, affects the animation timeline. |
Channel blending restrictions setting (Photoshop 6.0)
Key is 'brst' . Data is as follows:
Channel blending restrictions setting Length | Description |
---|
Following is repeated length / 4 times. |
4 | Channel number that is restricted |
Solid color sheet setting (Photoshop 6.0)
Key is 'SoCo' . Data is as follows:
Solid color sheet setting Length | Description |
---|
4 | Version ( = 16 for Photoshop 6.0) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Pattern fill setting (Photoshop 6.0)
Key is 'PtFl' . Data is as follows:
Pattern fill setting Length | Description |
---|
4 | Version ( =16 for Photoshop 6.0) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Gradient fill setting (Photoshop 6.0)
Key is 'GdFl' . Data is as follows:
Gradient Fill Setting Length | Description |
---|
4 bytes | Version ( = 16 for Photoshop 6.0) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Vector mask setting (Photoshop 6.0)
Key is 'vmsk' or 'vsms'. If key is 'vsms' then we are writing for (Photoshop CS6) and thedocument will have a 'vscg' key. Data is as follows:
Vector mask setting Length | Description |
---|
4 | Version ( = 3 for Photoshop 6.0) |
4 | Flags. bit 1 = invert, bit 2 = not link, bit 3 = disable |
The rest of the data is path components, loop until end of the length. |
Variable | Paths. See SeePath resource format |
Type tool object setting (Photoshop6.0)
This supersedes the type tool info in Photoshop 5.0 (see See Type tool Info).
Key is 'TySh' . Data is as follows:
Type tool object setting Length | Description |
---|
2 | Version ( =1 for Photoshop 6.0) |
6 * 8 | Transform: xx, xy, yx, yy, tx, and ty respectively. |
2 | Text version ( = 50 for Photoshop 6.0) |
4 | Descriptor version ( = 16 for Photoshop 6.0) |
Variable | Text data (see SeeDescriptor structure) |
2 | Warp version ( = 1 for Photoshop 6.0) |
4 | Descriptor version ( = 16 for Photoshop 6.0) |
Variable | Warp data (see SeeDescriptor structure) |
4 * 8 | left, top, right, bottom respectively. |
Foreign effect ID (Photoshop 6.0)
Key is 'ffxi' . Data is as follows:
Foreign effect ID Length | Description |
---|
4 | ID of the Foreign effect. |
Layer name source setting (Photoshop 6.0)
Key is 'lnsr' . Data is as follows:
Layer name source setting Length | Description |
---|
4 | ID for the layer name |
Pattern data (Photoshop 6.0)
Key is 'shpa' . Data is as follows:
Pattern data Length | Description |
---|
4 | Version ( = 0 for Photoshop 6.0) |
4 | Count of sets to follow |
The following is repeated for the count above. |
4 | Pattern signature |
4 | Pattern key |
4 | Count of patterns in this set |
1 | Copy on sheet duplication |
3 | Padding |
The following is repeated for the count of patterns above. |
4 | Color handling. Prefer convert = 'conv' , avoid conversion= 'avod' , luminance only = 'lumi' |
Variable | Pascal string name of the pattern |
Variable | Unicode string name ofthe pattern |
Variable | Pascal string of the unique identifier for the pattern |
Metadata setting (Photoshop 6.0)
Key is 'shmd' . Data is as follows:
Metadata setting Length | Description |
---|
4 | Count of metadata items to follow |
The following is repeated the number of times specified by the count above: |
4 | Signature of the data |
4 | Key of the data |
1 | Copy on sheet duplication |
3 | Padding |
4 | Length of data to follow |
Variable | Undocumented data |
Layer version (Photoshop 7.0)
Key is 'lyvr' . Data is as follows:
Layer version Length | Description |
---|
4 | A 32-bit number representing the version of Photoshop needed to read andinterpret the layer without data loss. 70 = 7.0, 80 = 8.0, etc. The minimum value is 70, because just having the field present in 6.0 triggers awarning. For the future, Photoshop 7 checks to see whether this number is larger than the currentversion -- i.e., 70 -- and if so, warns that it is ignoring some data. |
Transparency shapes layer (Photoshop 7.0)
Key is 'tsly' . Data is as follows:
Transparency shapes layer Length | Description |
---|
1 | 1: the transparency of the layer is used in determining the shape of the effects.This is the default for behavior like previous versions. 0: treated in the same way as fill opacity including modulating blend modes,rather than acting as strict transparency. Using this feature is useful for achieving effects that otherwise would requirecomplex use of clipping groups. |
3 | Padding |
Layer mask as global mask (Photoshop 7.0)
Key is 'lmgm' . Data is as follows:
Layer mask as global mask Length | Description |
---|
1 | 1: the layer mask is used in a final crossfade masking the layer and effectsrather than being used to shape the layer and its effects. This behavior was previously tied to the link status flag for the layer mask. (Anunlinked mask acted like a flag value of 1, a linked mask like 0). For old files that lack this key,the link status is used in order to preserve compositing results. |
3 | Padding |
Vector mask as global mask (Photoshop 7.0)
Key is 'vmgm' . Data is as follows:
Brightness and Contrast
Key is 'brit' . Data is as follows:
Brightness and Contrast Length | Description |
---|
2 | Brightness |
2 | Contrast |
2 | Mean value for brightness and contrast |
1 | Lab color only |
Channel Mixer
Key is 'mixr' . Data is as follows:
Channel Mixer Length | Description |
---|
2 | Version ( = 1) |
2 | Monochrome |
20 | RGB or CMYK color plus constant for the mixer settings. 4 * 2 bytes of color with2 bytes of constant. |
Color Lookup (Photoshop CS6)
Key is 'clrL' . Data is as follows:
Color Lookup Length | Description |
---|
2 | Version ( = 1) |
4 | Descriptor Version ( = 16) |
Variable | Descriptor of black and white information |
Placed Layer (replaced by SoLd in Photoshop CS3)
Key is 'plLd' . Data is as follows:
Placed Layer Length | Description |
---|
4 | Type ( = 'plcL' ) |
4 | Version ( = 3 ) |
Variable | Unique ID as a pascal string |
4 | Page number |
4 | Total pages |
4 | Anit alias policy |
4 | Placed layer type: 0 = unknown, 1 = vector, 2 = raster, 3 = image stack |
4 * 8 | Transformation: 8 doubles for x,y location of transform points |
4 | Warp version ( = 0 ) |
4 | Warp descriptor version ( = 16 ) |
Variable | Descriptor for warping information |
Linked Layer
Key is 'lnkD' . Also keys 'lnk2' and 'lnk3' . Data is as follows:
Linked Layer Length | Description |
---|
The following is repeated for each linked file. |
8 | Length of the data to follow |
4 | Type ( = 'liFD' linked file data, 'liFE' linked file external or 'liFA' linkedfile alias ) |
4 | Version ( = 1 to 7 ) |
Variable | Pascal string. Unique ID. |
Variable | Unicode string of theoriginal file name |
4 | File Type |
4 | File Creator |
8 | Length of the data to follow |
1 | File open descriptor |
Variable | Descriptor of open parameters. Only present when above is true. |
If the type is 'liFE' then a linked file Descriptor is next. |
Variable | Descriptor of linked file parameters. See comment above. |
If the type is 'liFE' and the version is greater than 3 then the following ispresent. Year, Month, Day, Hour, Minute, Second is next. |
4 | Year |
1 | Month |
1 | Day |
1 | Hour |
1 | Minute |
8 | Double for the seconds |
If the type is 'liFE' then a file size is next. |
8 | File size |
If the type is 'liFA' then 4 zeros are next. |
8 | All zeros |
If the type is 'liFE' then they bytes of the file are next. |
Variable | Raw bytes of the file. |
If the version is greater than or equal to 5 then the following is next. |
UnicodeString | Child Document ID. |
If the version is greater than or equal to 6 then the following is next. |
Double | Asset mod time. |
If the version is greater than or equal to 7 then the following is next. |
1 | Asset locked state, for Libraries assets. |
If the type is 'liFE' and the version is 2 then the following is next. |
Variable | Raw bytes of the file. |
Photo Filter
Key is 'phfl' . Data is as follows:
Photo Filter Length | Description |
---|
2 | Version ( = 3) or ( = 2 ) |
12 | 4 bytes each for XYZ color (Only in Version 3) |
10 | 2 bytes color space followed by 4 * 2 bytes color component (Only in Version 2) |
4 | Density |
1 | Preserve Luminosity |
Black White (Photoshop CS3)
Key is 'blwh' . Data is as follows:
Black White Length | Description |
---|
4 | Descriptor Version ( = 16) |
Variable | Descriptor of black and white information |
Content Generator Extra Data (Photoshop CS5)
Key is 'CgEd' . Data is as follows:
Content Generator Extra Data Length | Description |
---|
4 | Descriptor Version ( = 16) |
Variable | Descriptor of extra data |
Text Engine Data (Photoshop CS3)
Key is 'Txt2' . Data is as follows:
Text Engine Data Length | Description |
---|
4 | Length of data to follow |
Variable | Raw bytes for text engine |
Vibrance (Photoshop CS3)
Key is 'vibA' . Data is as follows:
Vibrance Length | Description |
---|
4 | Descriptor Version ( = 16) |
Variable | Descriptor of vibrance information |
Unicode Path Name (Photoshop CS6)
Key is 'pths' . Data is as follows:
Unicode Path Name Length | Description |
---|
4 | Descriptor Version ( = 16) |
Variable | Descriptor containing a list of unicode path names |
Animation Effects (Photoshop CS6)
Key is 'anFX' . Data is as follows:
Animation Effects Length | Description |
---|
4 | Descriptor Version ( = 16) |
Variable | Descriptor containing animation effects |
Filter Mask (Photoshop CS3)
Key is 'FMsk' . Data is as follows:
Filter Mask Length | Description |
---|
10 | Color space |
2 | Opacity |
Placed Layer Data (Photoshop CS3)
Key is 'SoLd' . See also 'PlLd' key. Data is as follows:
Filter Mask Length | Description |
---|
4 | Identifier ( = 'soLD' ) |
4 | Version ( = 4 ) |
4 | Descriptor Version ( = 16) |
Variable | Descriptor of placed layer information |
Vector Stroke Data (Photoshop CS6)
Key is 'vstk' . Data is as follows:
Vector stroke setting Length | Description |
---|
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Vector Stroke Content Data (Photoshop CS6)
Key is 'vscg' . Data is as follows:
Vector stroke content setting Length | Description |
---|
4 | Key for data |
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Using Aligned Rendering (Photoshop CS6)
Key is 'sn2P' . Data is as follows:
Using Aligned Rendering Length | Description |
---|
4 | Non zero is true for using aligned rendering |
Vector Origination Data (Photoshop CC)
Key is 'vogk' . Data is as follows:
Vector origination setting Length | Description |
---|
4 | Version ( = 1 for Photoshop CC) |
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Pixel Source Data (Photoshop CC)
Key is 'PxSc'. Data is as follows:
Pixel Source info Length | Description |
---|
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Compositor Used (Photoshop 2020)
Key is 'cinf'. Data is as follows:
Compositor Used Length | Description |
---|
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Pixel Source Data (Photoshop CC 2015)
Key is 'PxSD'. Data is as follows:
Pixel Source info Length | Description |
---|
8 | Length of data to follow |
Variable | Raw data for 3D or video layers. |
Artboard Data (Photoshop CC 2015)
Key is 'artb' or 'artd' or 'abdd'. Data is as follows:
Artboard info Length | Description |
---|
4 | Version ( = 16 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Smart Object Layer Data (Photoshop CC 2015)
Key is 'SoLE' . Data is as follows:
Smart Object info Length | Description |
---|
4 | Type ( = 'soLD' ) |
4 | Version ( = 4 or 5 ) |
Variable | Descriptor. Based on the Action file format structure (see See Descriptor structure) |
Saving Merged Transparency
Key is 'Mtrn', 'Mt16' or 'Mt32' . There is no data associated withthese keys.
User Mask
Key is 'LMsk' .
User Mask Length | Description |
---|
10 | Color space |
2 | Opacity |
1 | Flag ( = 128 ) |
Exposure
Key is 'expA' .
Exposure Length | Description |
---|
2 | Version (= 1) |
4 | Exposure |
4 | Offset |
4 | Gamma |
Filter Effects
Key is 'FXid' or 'FEid' .
Filter Effects Length | Description |
---|
4 | Version ( =1, 2 or 3) |
8 | Length of data to follow |
The following is repeated for the given length. |
Variable | Pascal string as identifier |
4 | Version ( = 1 ) |
8 | Length |
16 | Rectangle: top, left, bottom, right |
4 | Depth |
4 | Max channels |
The following is repeated for number of channels + a user mask + a sheet mask. |
4 | Boolean indicating whether array is written |
8 | Length |
2 | Compression mode of data to follow. |
Variable | Actual data based on compression |
End of repeating for channels |
1 | Next two items present or not |
2 | Compression mode of data to follow |
Variable | Actual data based on compression |