Photoshop brush

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Format details)
 
(6 intermediate revisions by one user not shown)
Line 4: Line 4:
 
|extensions={{ext|abr}}
 
|extensions={{ext|abr}}
 
}}
 
}}
'''Photoshop brush''' ('''ABR''') is a file format used by Adobe Photoshop for brushes (graphics, and information about brush behavior).
+
'''Photoshop brush''' ('''ABR''') is a file format used by [[Photoshop|Adobe Photoshop]] for brushes (graphics, and information about brush behavior).
  
== See also ==
+
== Format details ==
* [[PSD]]
+
There are at least two different ABR formats, which we'll call "old format" and "new format". The first two bytes of the file are the major version number.
 +
 
 +
=== Old format ===
 +
Known major version numbers: 1, 2
 +
 
 +
This format is documented in old versions of the Photoshop file formats specification.
 +
 
 +
=== New format ===
 +
Known major version numbers: 6, 7
 +
 
 +
This format is not publicly documented by Adobe.
 +
 
 +
Some guesses about the format: Minor version number is at offset 2. This signature "8BIM" appears at offset 4; it and the rest of the file constitute a ''series of tagged blocks'' (the basic structure of which is publicly documented). The known block types are 'samp', 'patt', and 'desc'. See below for some information about the 'samp' block. The format of 'patt' is the same as that of 'Patt' (which is publicly documented). The 'desc' block contains a ''descriptor''.
 +
 
 +
==== 'samp' block ====
 +
''This information is based on guesswork, and may not be correct.''
 +
 
 +
The 'samp' block contains a series of ''items''.
 +
 
 +
v6.1 item:
 +
{| class="wikitable"
 +
! Type !! Observed values !! Contents
 +
|-
 +
|uint32 || || Length of the remainder of this item, excluding padding
 +
|-
 +
|Pascal string || || ID
 +
|-
 +
|8 bytes || || Unknown
 +
|-
 +
|uint16 || || Depth
 +
|-
 +
|4×int32 || || Rectangle (top, left, bottom, right)
 +
|-
 +
|uint16 || || Depth
 +
|-
 +
|byte || || Compression mode
 +
|-
 +
|bytes || || Image data
 +
|-
 +
|bytes || || 0 to 3 padding bytes, to make the item size a multiple of 4
 +
|}
 +
 
 +
v6.2 item:
 +
{| class="wikitable"
 +
! Type !! Observed values !! Contents
 +
|-
 +
|uint32 || || Length of the remainder of this item, excluding padding
 +
|-
 +
|Pascal string || || ID
 +
|-
 +
|2 bytes || <code>00 01</code> || Unknown
 +
|-
 +
|2 bytes || <code>00 00</code> || Unknown
 +
|-
 +
|virtual memory array list || ||
 +
|-
 +
|bytes || || 0 to 3 padding bytes, to make the item size a multiple of 4
 +
|}
  
 
== Specifications ==
 
== Specifications ==
Note that the information in these documents might not apply to all versions of the format. The current version does not appear to be well-documented.
+
=== Old format ===
 
* [ftp://ftp.buerliag.ch/pub/Documentation/Adobe/Photoshop/ps6ffspecsv2.pdf Photoshop File Formats Specification V6.0 Release 2]
 
* [ftp://ftp.buerliag.ch/pub/Documentation/Adobe/Photoshop/ps6ffspecsv2.pdf Photoshop File Formats Specification V6.0 Release 2]
* [http://0xfeedface.org/~shawn/graphics/photoshop/abr/abr-spec.htm Photoshop Brushes (ABR) Specification]
+
* [https://web.archive.org/web/20140107211448/http://0xfeedface.org/~shawn/graphics/photoshop/abr/abr-spec.htm Photoshop Brushes (ABR) Specification] (from archive.org)
 +
 
 +
=== New format ===
 +
* [https://www.adobe.com/devnet-apps/photoshop/fileformatashtml/ Adobe Photoshop File Formats Specification] (Defines some data structures used in ABR format, but does not describe the format itself.)
  
 
== Software ==
 
== Software ==
* [http://www.adobe.com/products/photoshop.html Adobe Photoshop]
+
* [[Adobe Photoshop]]
 
* [[Konvertor]]
 
* [[Konvertor]]
 
* [[XnView]]
 
* [[XnView]]
 +
* [http://www.sunnyspot.org/gimp/tools.html ABR2GBR] - Most likely only supports old format
  
 
== Sample files ==
 
== Sample files ==
Line 25: Line 86:
  
 
[[Category:Adobe]]
 
[[Category:Adobe]]
 +
[[Category:Photoshop]]

Latest revision as of 14:46, 15 September 2016

File Format
Name Photoshop brush
Ontology
Extension(s) .abr

Photoshop brush (ABR) is a file format used by Adobe Photoshop for brushes (graphics, and information about brush behavior).

Contents

[edit] Format details

There are at least two different ABR formats, which we'll call "old format" and "new format". The first two bytes of the file are the major version number.

[edit] Old format

Known major version numbers: 1, 2

This format is documented in old versions of the Photoshop file formats specification.

[edit] New format

Known major version numbers: 6, 7

This format is not publicly documented by Adobe.

Some guesses about the format: Minor version number is at offset 2. This signature "8BIM" appears at offset 4; it and the rest of the file constitute a series of tagged blocks (the basic structure of which is publicly documented). The known block types are 'samp', 'patt', and 'desc'. See below for some information about the 'samp' block. The format of 'patt' is the same as that of 'Patt' (which is publicly documented). The 'desc' block contains a descriptor.

[edit] 'samp' block

This information is based on guesswork, and may not be correct.

The 'samp' block contains a series of items.

v6.1 item:

Type Observed values Contents
uint32 Length of the remainder of this item, excluding padding
Pascal string ID
8 bytes Unknown
uint16 Depth
4×int32 Rectangle (top, left, bottom, right)
uint16 Depth
byte Compression mode
bytes Image data
bytes 0 to 3 padding bytes, to make the item size a multiple of 4

v6.2 item:

Type Observed values Contents
uint32 Length of the remainder of this item, excluding padding
Pascal string ID
2 bytes 00 01 Unknown
2 bytes 00 00 Unknown
virtual memory array list
bytes 0 to 3 padding bytes, to make the item size a multiple of 4

[edit] Specifications

[edit] Old format

[edit] New format

[edit] Software

[edit] Sample files

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox