Method: PSD::TypeTool#styles

Defined in:
lib/psd/layer/info/typetool.rb

#stylesObject



99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
# File 'lib/psd/layer/info/typetool.rb', line 99

def styles
  return {} if engine_data.nil?

  @styles ||= (
    data = engine_data.EngineDict.StyleRun.RunArray.map do |r|
      r.StyleSheet.StyleSheetData
    end

    Hash[data.reduce({}) { |m, o|
      o.each do |k, v|
        (m[k] ||= []) << v
      end

      m
    }.map { |k, v|
      [k, v.uniq]
    }]
  )
end