Compare commits

...

2 Commits

Author SHA1 Message Date
jameswood 438bb264d1 rotate resized images based on exif info
EXIF rotation information embedded by the capture device is now
respected when generating output images. Original images remain
untouched.
2017-03-10 16:03:03 +11:00
Joseph Wynn 0cc608031e Set the linguist-vendored attribute on features/test-site/*
This prevents Linguist from including the directory in the GitHub language stats
2017-01-09 11:37:19 +13:00
5 changed files with 31 additions and 7 deletions

1
.gitattributes vendored Normal file
View File

@ -0,0 +1 @@
features/test-site/* linguist-vendored

View File

@ -47,6 +47,11 @@ responsive_image:
- width: 1400
quality: 90
# [Optional, Default: false]
# Rotate resized images depending on their EXIF rotation attribute. Useful for
# working with JPGs directly from digital cameras and smartphones
respect_exif_rotation: false
# [Optional, Default: assets]
# The base directory where assets are stored. This is used to determine the
# `dirname` value in `output_path_format` below.
@ -128,7 +133,23 @@ You will need to create a template in order to use the `responsive_image` tag. B
{% endfor %}
{% endcapture %}
<img src="/{{ path }}" alt="{{ alt }}" srcset="{{ srcset | strip_newlines }} /{{ original.path }} {{ original.width }}w">
<img src="/{{ path }}" alt="{{ alt }}" srcset="{{ srcset | strip_newlines }}">
```
#### Responsive image with `srcset` where the largest resized image is the default
> **Note:** This is useful if you don't want your originals to appear on your site. For example, if you're uploading full-res images directly from a device.
```twig
{% capture srcset %}
{% for i in resized %}
/{{ i.path }} {{ i.width }}w,
{% endfor %}
{% endcapture %}
{% assign largest = resized | sort: 'width' | last %}
<img src="/{{ largest.path }}" alt="{{ alt }}" srcset="{{ srcset | strip_newlines }}">
```
#### Responsive images with `<picture>`

View File

@ -6,7 +6,8 @@ module Jekyll
'base_path' => 'assets',
'output_path_format' => 'assets/resized/%{filename}-%{width}x%{height}.%{extension}',
'sizes' => [],
'extra_images' => []
'extra_images' => [],
'respect_exif_rotation' => false
}
def initialize(site)

View File

@ -4,6 +4,7 @@ module Jekyll
include ResponsiveImage::Utils
def resize_image(img, config)
img.auto_orient! if config['respect_exif_rotation']
resized = []
config['sizes'].each do |size|

View File

@ -1,5 +1,5 @@
module Jekyll
module ResponsiveImage
VERSION = '1.1.0'.freeze
VERSION = '1.1.1'.freeze
end
end