Pixlr document
From Just Solve the File Format Problem
(Difference between revisions)
(→Format Specification) |
m (→Format Specification) |
||
Line 55: | Line 55: | ||
2 bytes - unknown | 2 bytes - unknown | ||
if text layer | if text layer | ||
− | text + font data | + | text + font data (TODO) |
end if | end if | ||
Revision as of 20:29, 23 June 2017
Pixlr is a layered raster graphics format associated with Web based Pixlr application.
Format Specification
[pixlr.com limited documentation]
Pixlr document format
The pixlr format is a compressed binary format, why we choose this and not a xml/jpg ish format is due to many reasons.
It all comes down to quality, speed and file size.
The pxd file is compressed with zlib to reduce the file size.
The uncompressed data are then ordered into two main sections. The Header and the Layer section.
The header includes, pxd version, color-mode, width, height and number of layers.
Reverse engineered information (after inflating the file): 2 bytes - version = 3 2 bytes - colorMode = 0 4 bytes - width 4 bytes - height 2 bytes - numLayers 4 bytes - The total size of the layers in bytes for every layer 4 bytes - layer size in bytes (including layer bitmap data) 2 bytes - namelen n bytes - name 1 byte - layer type: 0=bitmap, 1=text (text layer also contains bitmap) 4 bytes - layer x-pos 4 bytes - layer y-pos 4 bytes - layer width 4 bytes - layer height 1 byte - opacity (0..100) 1 byte - visible 2 bytes - blendmode 4 bytes - size in bytes of layer bitmap data n bytes - layer bitmap data in ARGB format (not premultiplied) 4 bytes - size in bytes of layer mask data (0 if no mask) 1 byte - number of layer style effects for every effect 4 bytes - size in bytes of effect data 1 byte - type of effect n bytes - effect data (TODO) end every effect 2 bytes - unknown if text layer text + font data (TODO) end if end every layer (TODO: Merged image data may be at the end ?)