Module: RailsSassImages::Sass

Included in:
Sass::Script::Functions
Defined in:
lib/rails-sass-images/sass/size.rb,
lib/rails-sass-images/sass/inline.rb

Instance Method Summary collapse

Instance Method Details

#image_height(path) ⇒ Object

Get image height



11
12
13
14
# File 'lib/rails-sass-images/sass/size.rb', line 11

def image_height(path)
  asset = RailsSassImages.asset(path)
  Sass::Script::Number.new(Dimensions.height(asset), ["px"])
end

#image_width(path) ⇒ Object

Get image width



5
6
7
8
# File 'lib/rails-sass-images/sass/size.rb', line 5

def image_width(path)
  asset = RailsSassImages.asset(path)
  Sass::Script::Number.new(Dimensions.width(asset), ["px"])
end

#inline(path) ⇒ Object

Inline asset file to CSS by data-uri. Can be used for images and fonts.

.icon
  background: inline("icon.png")

@font-face
  font-family: "MyFont"
  src: inline("my.woff") format('woff')


12
13
14
15
16
17
18
19
20
# File 'lib/rails-sass-images/sass/inline.rb', line 12

def inline(path)
  asset = RailsSassImages.asset(path)

  mime = MIME::Types.type_for(asset.to_s).first.content_type
  file = asset.read
  file = [file].flatten.pack('m').gsub("\n", '')

  Sass::Script::String.new("url('data:#{mime};base64,#{file}')")
end