Commit 143a3179 authored by Ryan LeFevre's avatar Ryan LeFevre

Add global mask parsing

parent d9eb995e
......@@ -2,7 +2,8 @@ var PSD = require('../');
psd = PSD.open('./examples/images/example.psd', function (psd) {
console.log(psd.header.export());
console.log(psd.tree().children()[0].children()[0].nextSibling().export());
console.log(psd.tree().export());
console.log(psd.layerMask.globalMask);
});
// psd.image.saveAsPng('./output.png').then(function () {
// console.log("Finished!");
......
......@@ -35,4 +35,24 @@ module.exports = class LayerMask
for i in [0...layerCount]
@layers.push new Layer(@file, @header).parse()
parseGlobalMask: ->
\ No newline at end of file
parseGlobalMask: ->
length = @file.readInt()
return if length <= 0
maskEnd = @file.tell() + length
@globalMask = _({}).tap (mask) ->
mask.overlayColorSpace = @file.readShort()
mask.colorComponents = [
@file.readShort() >> 8
@file.readShort() >> 8
@file.readShort() >> 8
@file.readShort() >> 8
]
mask.opacity = @file.readShort() / 16.0
# 0 = color selected, 1 = color protected, 128 = use value per layer
mask.kind = @file.readByte()
@file.seek maskEnd
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment