Sha256: 7d7477a0d9fb3fc7517dd80ceeda5ebe6c86a793bcf7655c2833a368e3025ce9

Contents?: true

Size: 1.93 KB

Versions: 18

Compression:

Stored size: 1.93 KB

Contents

class PSD
  class Layer
    module Helpers
      # Does this layer represent the start of a folder section?
      def folder?
        if info.has_key?(:section_divider)
          info[:section_divider].is_folder
        elsif info.has_key?(:nested_section_divider)
          info[:nested_section_divider].is_folder
        else
          name == "<Layer group>"
        end
      end

      # Does this layer represent the end of a folder section?
      def folder_end?
        if info.has_key?(:section_divider)
          info[:section_divider].is_hidden
        elsif info.has_key?(:nested_section_divider)
          info[:nested_section_divider].is_hidden
        else
          name == "</Layer group>"
        end
      end

      # Is the layer completely locked?
      def all_locked?
        return false unless info.has_key?(:locked)
        info[:locked].all_locked
      end

      # Is the layer position locked?
      def position_locked?
        return false unless info.has_key?(:locked)
        info[:locked].position_locked
      end

      # Is the layer composite locked?
      def composite_locked?
        return false unless info.has_key?(:locked)
        info[:locked].composite_locked
      end

      # Is the layer transparency locked?
      def transparency_locked?
        return false unless info.has_key?(:locked)
        info[:locked].transparency_locked
      end

      # Helper that exports the text data in this layer, if any.
      def text
        return nil unless info[:type]
        info[:type].to_hash
      end

      def layer_type
        return 'normal' unless info.has_key?(:section_divider)
        info[:section_divider].layer_type
      end

      def fill_opacity
        return 255 unless info.has_key?(:fill_opacity)
        info[:fill_opacity].value
      end

      def raster_mask?
        image.has_mask? && image.mask_data.length > 0
      end

      def vector_mask?
        !vector_mask.nil?
      end
    end
  end
end

Version data entries

18 entries across 18 versions & 1 rubygems

Version Path
psd-3.9.0 lib/psd/layer/helpers.rb
psd-3.8.0 lib/psd/layer/helpers.rb
psd-3.7.0 lib/psd/layer/helpers.rb
psd-3.6.0 lib/psd/layer/helpers.rb
psd-3.5.0 lib/psd/layer/helpers.rb
psd-3.4.0 lib/psd/layer/helpers.rb
psd-3.3.3 lib/psd/layer/helpers.rb
psd-3.3.2 lib/psd/layer/helpers.rb
psd-3.3.1 lib/psd/layer/helpers.rb
psd-3.2.4 lib/psd/layer/helpers.rb
psd-3.2.3 lib/psd/layer/helpers.rb
psd-3.2.2 lib/psd/layer/helpers.rb
psd-3.2.1 lib/psd/layer/helpers.rb
psd-3.2.0 lib/psd/layer/helpers.rb
psd-3.1.5 lib/psd/layer/helpers.rb
psd-3.1.4 lib/psd/layer/helpers.rb
psd-3.1.3 lib/psd/layer/helpers.rb
psd-3.1.2 lib/psd/layer/helpers.rb