43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
# File 'lib/psd/renderer.rb', line 43
def execute_pipeline
PSD.logger.debug "Executing pipeline on #{active_node.debug_name}"
children.reverse.each do |child|
next if !@render_hidden && !child.visible?
if child.group?
push_node(child)
if child.passthru_blending?
PSD.logger.debug "#{child.name} is a group with passthru blending"
execute_pipeline
else
PSD.logger.debug "#{child.name} is a group with #{child.blending_mode} blending"
create_group_canvas(child)
execute_pipeline
child_canvas = pop_canvas
child_canvas.paint_to active_canvas
end
pop_node and next
end
canvas = Canvas.new(child, nil, nil, @opts)
canvas.paint_to active_canvas
end
end
|