imgix-rails 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +9 -0
- data/.rspec +2 -0
- data/.travis.yml +4 -0
- data/Gemfile +4 -0
- data/README.md +157 -0
- data/Rakefile +1 -0
- data/bin/console +14 -0
- data/bin/setup +7 -0
- data/imgix-rails.gemspec +35 -0
- data/lib/.DS_Store +0 -0
- data/lib/imgix/.DS_Store +0 -0
- data/lib/imgix/rails.rb +21 -0
- data/lib/imgix/rails/.DS_Store +0 -0
- data/lib/imgix/rails/version.rb +5 -0
- data/lib/imgix/rails/view_helper.rb +105 -0
- data/lib/imgix/railtie.rb +20 -0
- data/vendor/parameters.json +1145 -0
- metadata +139 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 57076ae3e45e23986cf73972ab57e6f1ea9c3c4a
|
4
|
+
data.tar.gz: 1f557d144e7cba2b5e2ed80f37a9fad560594604
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: b08a5cfa44532e6e8269326506fe0b42e013b90ad6c65e667b57713931cefe35e65d81ca4cef10f56f0d74b2ed9df71749016b056c6e29872b862a0be40cb05a
|
7
|
+
data.tar.gz: c4f19d240009a659fb66ea47ad49347ea2548729353b7223ccaa9b5cf9b47d82809c36cb3ff55a6f361417c6652a3dbf47cb345478b3701f2c8e8a2fd04b41fb
|
data/.gitignore
ADDED
data/.rspec
ADDED
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,157 @@
|
|
1
|
+
# imgix-rails
|
2
|
+
|
3
|
+
[](https://travis-ci.org/imgix/imgix-rails)
|
4
|
+
|
5
|
+
`imgix-rails` is a gem designed to make integrating imgix into your Rails app easier. It builds on [imgix-rb](https://github.com/imgix/imgix-rb) to offer a few Rails-specific interfaces.
|
6
|
+
|
7
|
+
imgix is a real-time image processing service and CDN. It allows you to manipulate images merely by changing their URL parameters. For a full list of URL parameters, please see the [imgix URL API documentation](https://www.imgix.com/docs/reference).
|
8
|
+
|
9
|
+
We recommend using something like [Paperclip](https://github.com/thoughtbot/paperclip), [Carrierwave](https://github.com/carrierwaveuploader/carrierwave), or [s3_direct_upload](https://github.com/waynehoover/s3_direct_upload) to handle uploads and then serving the images out using this gem.
|
10
|
+
|
11
|
+
## Installation
|
12
|
+
|
13
|
+
Add this line to your application's Gemfile:
|
14
|
+
|
15
|
+
```ruby
|
16
|
+
gem 'imgix-rails'
|
17
|
+
```
|
18
|
+
|
19
|
+
And then execute:
|
20
|
+
|
21
|
+
$ bundle
|
22
|
+
|
23
|
+
## Usage
|
24
|
+
|
25
|
+
imgix-rails provides a few different hooks to work with your existing Rails application. All current methods are drop-in replacements for the `image_tag` helper.
|
26
|
+
|
27
|
+
### Configuration
|
28
|
+
|
29
|
+
Before you get started, you will need to define your imgix configuration in your `config/application.rb`, or in an environment-specific configuration file.
|
30
|
+
|
31
|
+
```ruby
|
32
|
+
Rails.application.configure do
|
33
|
+
config.imgix = {
|
34
|
+
source: "Name of your source, e.g. assets.imgix.net",
|
35
|
+
secure_url_token: "optional secure URL token found in your dashboard (https://webapp.imgix.com)"
|
36
|
+
}
|
37
|
+
end
|
38
|
+
```
|
39
|
+
|
40
|
+
### ix_image_tag
|
41
|
+
|
42
|
+
The simplest way of working with imgix-rails is to use the `ix_image_tag`, this allows you to pass parameters to imgix to handle things like resizing, cropping, etc.
|
43
|
+
|
44
|
+
```erb
|
45
|
+
<%= ix_image_tag('/path/to/image.jpg', { w: 400, h: 300 }) %>
|
46
|
+
```
|
47
|
+
|
48
|
+
Will render out HTML like the following:
|
49
|
+
|
50
|
+
```html
|
51
|
+
<img src="https://assets.imgix.net/path/to/image?w=400&h=300" />
|
52
|
+
```
|
53
|
+
|
54
|
+
We recommend leveraging this to generate powerful helpers within your application like the following:
|
55
|
+
|
56
|
+
```ruby
|
57
|
+
def profile_image_tag(user)
|
58
|
+
ix_image_tag(user.profile_image_url, { w: 100, h: 200, fit: 'crop' })
|
59
|
+
end
|
60
|
+
```
|
61
|
+
|
62
|
+
Then rendering the portrait in your application is very easy:
|
63
|
+
|
64
|
+
```erb
|
65
|
+
<%= profile_image_tag(@user) %>
|
66
|
+
```
|
67
|
+
|
68
|
+
### ix_responsive_image_tag
|
69
|
+
|
70
|
+
The `ix_responsive_image_tag` helper method makes it easy to bring responsive imagery to your Rails app. We talk a bit about using the `srcset` attribute in an application in the following blog post: [“Responsive Images with `srcset` and imgix.”](http://blog.imgix.com/post/127012184664/responsive-images-with-srcset-imgix)
|
71
|
+
|
72
|
+
The `ix_responsive_image_tag` will generate an `<img>` element with a filled-out `srcset` attribute that leans on imgix to do the hard work.
|
73
|
+
|
74
|
+
It will use the configured device-pixel-ratios in the `config.imgix[:responsive_resolutions]` value. It will default to `[1, 2]`.
|
75
|
+
|
76
|
+
```erb
|
77
|
+
<%= ix_responsive_image_tag('/users/1/avatar.png', { w: 400, h: 300 }) %>
|
78
|
+
```
|
79
|
+
|
80
|
+
This will generate the following HTML:
|
81
|
+
|
82
|
+
```html
|
83
|
+
<img
|
84
|
+
srcset="https://assets.imgix.net/users/1/avatar.png?w=400&h=300 1x,
|
85
|
+
https://assets.imgix.net/users/1/avatar.png?w=400&h=300&dpr=2 2x"
|
86
|
+
src="https://assets.imgix.net/users/1/avatar.png?w=400&h=300"
|
87
|
+
/>
|
88
|
+
```
|
89
|
+
|
90
|
+
### ix_picture_tag
|
91
|
+
|
92
|
+
The `ix_picture_tag` helper method makes it easy to generate `<picture>` elements in your Rails app.
|
93
|
+
|
94
|
+
The `ix_picture_tag` method will generate a `<picture>` element with a single `<source>` element and a fallback `<img>` element. We are open for new directions to take this in.
|
95
|
+
|
96
|
+
It will use the configured device-pixel-ratios in the `config.imgix[:responsive_resolutions]` value. It will default to `[1, 2]`.
|
97
|
+
|
98
|
+
```erb
|
99
|
+
<%= ix_picture_tag('/users/1/avatar.png', { w: 400, h: 300 }) %>
|
100
|
+
```
|
101
|
+
|
102
|
+
Will generate the following HTML:
|
103
|
+
|
104
|
+
```html
|
105
|
+
<picture>
|
106
|
+
<source srcset="https://assets.imgix.net/users/1/avatar.png?w=400&h=300 1x,
|
107
|
+
https://assets.imgix.net/users/1/avatar.png?w=400&h=300&dpr=2 2x" />
|
108
|
+
<img src="https://assets.imgix.net/users/1/avatar.png?w=400&h=300" />
|
109
|
+
</picture>
|
110
|
+
```
|
111
|
+
|
112
|
+
### Hostname Removal
|
113
|
+
|
114
|
+
You can also configure imgix-rails to disregard given hostnames and only use the path component from given URLs. This is useful if you have [a Web Folder or an Amazon S3 imgix Source configured](https://www.imgix.com/docs/tutorials/creating-sources) but store the fully-qualified URLs for those resources in your database.
|
115
|
+
|
116
|
+
For example, let's say you are using S3 for storage. An `#avatar_url` value might look like the following in your application:
|
117
|
+
|
118
|
+
```ruby
|
119
|
+
@user.avatar_url #=> "https://s3.amazonaws.com/my-bucket/users/1.png"
|
120
|
+
```
|
121
|
+
|
122
|
+
You would then configure imgix in your Rails application to disregard the `'s3.amazonaws.com'` hostname:
|
123
|
+
|
124
|
+
```ruby
|
125
|
+
Rails.application.configure do
|
126
|
+
config.imgix = {
|
127
|
+
source: "my-imgix-source.imgix.net",
|
128
|
+
hostname_to_replace: "s3.amazonaws.com"
|
129
|
+
}
|
130
|
+
end
|
131
|
+
```
|
132
|
+
|
133
|
+
Now when you call `ix_image_tag` or another helper, you get an imgix URL:
|
134
|
+
|
135
|
+
```erb
|
136
|
+
<%= ix_image_tag(@user.avatar_url) %>
|
137
|
+
```
|
138
|
+
|
139
|
+
Renders:
|
140
|
+
|
141
|
+
```html
|
142
|
+
<img src="https://my-imgix-source.imgix.net/my-bucket/users/1.png" />
|
143
|
+
```
|
144
|
+
|
145
|
+
## Development
|
146
|
+
|
147
|
+
After checking out the repo, run `bin/setup` to install dependencies. Then, run `bin/console` for an interactive prompt that will allow you to experiment.
|
148
|
+
|
149
|
+
To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release` to create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
150
|
+
|
151
|
+
## Contributing
|
152
|
+
|
153
|
+
1. Fork it ( https://github.com/[my-github-username]/imgix-rails/fork )
|
154
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
155
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
156
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
157
|
+
5. Create a new Pull Request
|
data/Rakefile
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
require "bundler/gem_tasks"
|
data/bin/console
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require "bundler/setup"
|
4
|
+
require "imgix/rails"
|
5
|
+
|
6
|
+
# You can add fixtures and/or initialization code here to make experimenting
|
7
|
+
# with your gem easier. You can also use a different console, if you like.
|
8
|
+
|
9
|
+
# (If you use this, don't forget to add pry to your Gemfile!)
|
10
|
+
# require "pry"
|
11
|
+
# Pry.start
|
12
|
+
|
13
|
+
require "irb"
|
14
|
+
IRB.start
|
data/bin/setup
ADDED
data/imgix-rails.gemspec
ADDED
@@ -0,0 +1,35 @@
|
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'imgix/rails/version'
|
5
|
+
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "imgix-rails"
|
8
|
+
spec.version = Imgix::Rails::VERSION
|
9
|
+
spec.authors = ["Kelly Sutton"]
|
10
|
+
spec.email = ["kelly@imgix.com"]
|
11
|
+
|
12
|
+
spec.summary = %q{Makes integrating imgix into your Rails app easier. It builds on imgix-rb to offer a few Rails-specific interfaces.}
|
13
|
+
spec.description = %q{Makes integrating imgix into your Rails app easier. It builds on imgix-rb to offer a few Rails-specific interfaces.}
|
14
|
+
spec.homepage = "https://github.com/imgix/imgix-rails"
|
15
|
+
|
16
|
+
# Prevent pushing this gem to RubyGems.org by setting 'allowed_push_host', or
|
17
|
+
# delete this section to allow pushing this gem to any host.
|
18
|
+
if spec.respond_to?(:metadata)
|
19
|
+
spec.metadata['allowed_push_host'] = "https://rubygems.org"
|
20
|
+
else
|
21
|
+
raise "RubyGems 2.0 or newer is required to protect against public gem pushes."
|
22
|
+
end
|
23
|
+
|
24
|
+
spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
|
25
|
+
spec.bindir = "exe"
|
26
|
+
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
27
|
+
spec.require_paths = ["lib"]
|
28
|
+
|
29
|
+
spec.add_runtime_dependency "imgix", '~> 0.3', '>= 0.3.5'
|
30
|
+
|
31
|
+
spec.add_development_dependency "bundler", "~> 1.9"
|
32
|
+
spec.add_development_dependency "rake", "~> 10.0"
|
33
|
+
spec.add_development_dependency "rspec"
|
34
|
+
spec.add_development_dependency "rspec-rails"
|
35
|
+
end
|
data/lib/.DS_Store
ADDED
Binary file
|
data/lib/imgix/.DS_Store
ADDED
Binary file
|
data/lib/imgix/rails.rb
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
require "imgix/rails/version"
|
2
|
+
|
3
|
+
if defined? Rails::Railtie
|
4
|
+
require "imgix/railtie"
|
5
|
+
end
|
6
|
+
|
7
|
+
require "active_support"
|
8
|
+
|
9
|
+
module Imgix
|
10
|
+
module Rails
|
11
|
+
class Config < ::ActiveSupport::OrderedOptions; end
|
12
|
+
|
13
|
+
def self.config
|
14
|
+
@@config ||= Config.new
|
15
|
+
end
|
16
|
+
|
17
|
+
def self.configure
|
18
|
+
yield self.config
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
Binary file
|
@@ -0,0 +1,105 @@
|
|
1
|
+
require "imgix"
|
2
|
+
|
3
|
+
module Imgix
|
4
|
+
module Rails
|
5
|
+
class ConfigurationError < StandardError; end
|
6
|
+
|
7
|
+
module ViewHelper
|
8
|
+
def ix_image_tag(source, options={})
|
9
|
+
validate_configuration!
|
10
|
+
|
11
|
+
source = replace_hostname(source)
|
12
|
+
normal_opts = options.slice!(*available_parameters)
|
13
|
+
|
14
|
+
image_tag(client.path(source).to_url(options).html_safe, normal_opts)
|
15
|
+
end
|
16
|
+
|
17
|
+
def ix_responsive_image_tag(source, options={})
|
18
|
+
options.merge!({
|
19
|
+
srcset: srcset_for(source, options)
|
20
|
+
})
|
21
|
+
|
22
|
+
ix_image_tag(source, options)
|
23
|
+
end
|
24
|
+
|
25
|
+
def ix_picture_tag(source, options={})
|
26
|
+
content_tag(:picture) do
|
27
|
+
concat(tag(:source, srcset: srcset_for(source, options)))
|
28
|
+
concat(ix_image_tag(source, options))
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
|
34
|
+
def validate_configuration!
|
35
|
+
imgix = ::Imgix::Rails.config.imgix
|
36
|
+
unless imgix.try(:[], :source)
|
37
|
+
raise ConfigurationError.new("imgix source is not configured. Please set config.imgix[:source].")
|
38
|
+
end
|
39
|
+
|
40
|
+
unless imgix[:source].is_a?(Array) || imgix[:source].is_a?(String)
|
41
|
+
raise ConfigurationError.new("imgix source must be a String or an Array.")
|
42
|
+
end
|
43
|
+
end
|
44
|
+
|
45
|
+
def replace_hostname(source)
|
46
|
+
new_source = source.dup
|
47
|
+
|
48
|
+
# Replace any hostnames configured to trim things down just to their paths.
|
49
|
+
# We use split to remove the protocol in the process.
|
50
|
+
hostnames_to_remove.each do |hostname|
|
51
|
+
splits = source.split(hostname)
|
52
|
+
new_source = splits.last if splits.size > 1
|
53
|
+
end
|
54
|
+
|
55
|
+
new_source
|
56
|
+
end
|
57
|
+
|
58
|
+
def client
|
59
|
+
return @client if @client
|
60
|
+
imgix = ::Imgix::Rails.config.imgix
|
61
|
+
|
62
|
+
opts = {
|
63
|
+
host: imgix[:source],
|
64
|
+
library_param: "rails",
|
65
|
+
library_version: Imgix::Rails::VERSION
|
66
|
+
}
|
67
|
+
|
68
|
+
if imgix[:secure_url_token].present?
|
69
|
+
opts[:token] = imgix[:secure_url_token]
|
70
|
+
end
|
71
|
+
|
72
|
+
if imgix.has_key?(:include_library_param)
|
73
|
+
opts[:include_library_param] = imgix[:include_library_param]
|
74
|
+
end
|
75
|
+
|
76
|
+
@client = ::Imgix::Client.new(opts)
|
77
|
+
end
|
78
|
+
|
79
|
+
def available_parameters
|
80
|
+
@available_parameters ||= parameters.keys
|
81
|
+
end
|
82
|
+
|
83
|
+
def parameters
|
84
|
+
path = File.expand_path("../../../../vendor/parameters.json", __FILE__)
|
85
|
+
@parameters ||= JSON.parse(File.read(path), symbolize_names: true)[:parameters]
|
86
|
+
end
|
87
|
+
|
88
|
+
def srcset_for(source, options={})
|
89
|
+
configured_resolutions.map do |resolution|
|
90
|
+
srcset_options = options.slice(*available_parameters)
|
91
|
+
srcset_options[:dpr] = resolution unless resolution == 1
|
92
|
+
client.path(source).to_url(srcset_options) + " #{resolution}x"
|
93
|
+
end.join(', ')
|
94
|
+
end
|
95
|
+
|
96
|
+
def configured_resolutions
|
97
|
+
::Imgix::Rails.config.imgix[:responsive_resolutions] || [1, 2]
|
98
|
+
end
|
99
|
+
|
100
|
+
def hostnames_to_remove
|
101
|
+
Array(::Imgix::Rails.config.imgix[:hostname_to_replace] || ::Imgix::Rails.config.imgix[:hostnames_to_replace])
|
102
|
+
end
|
103
|
+
end
|
104
|
+
end
|
105
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require "rails"
|
2
|
+
require "rails/railtie"
|
3
|
+
require "imgix/rails"
|
4
|
+
require "imgix/rails/view_helper"
|
5
|
+
|
6
|
+
module Imgix
|
7
|
+
module Rails
|
8
|
+
class Railtie < ::Rails::Railtie
|
9
|
+
config.imgix = ActiveSupport::OrderedOptions.new
|
10
|
+
|
11
|
+
initializer "imgix-rails.view_helper" do |app|
|
12
|
+
Imgix::Rails.configure do |config|
|
13
|
+
config.imgix = app.config.imgix
|
14
|
+
end
|
15
|
+
|
16
|
+
ActionView::Base.send :include, ViewHelper
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,1145 @@
|
|
1
|
+
{
|
2
|
+
"parameters": {
|
3
|
+
"auto": {
|
4
|
+
"display_name": "auto features",
|
5
|
+
"category": "automatic",
|
6
|
+
"expects": "list",
|
7
|
+
"possible_values": [
|
8
|
+
"enhance",
|
9
|
+
"format",
|
10
|
+
"redeye"
|
11
|
+
],
|
12
|
+
"url": "https://www.imgix.com/docs/reference/automatic#param-auto",
|
13
|
+
"short_description": "Applies automatic enhancements to images."
|
14
|
+
},
|
15
|
+
"ba": {
|
16
|
+
"display_name": "blend align",
|
17
|
+
"category": "blend",
|
18
|
+
"expects": "list",
|
19
|
+
"possible_values": [
|
20
|
+
"top",
|
21
|
+
"bottom",
|
22
|
+
"left",
|
23
|
+
"right",
|
24
|
+
"middle"
|
25
|
+
],
|
26
|
+
"depends": [
|
27
|
+
"blend"
|
28
|
+
],
|
29
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendalign",
|
30
|
+
"short_description": "Changes the blend alignment relative to the parent image."
|
31
|
+
},
|
32
|
+
"balph": {
|
33
|
+
"display_name": "blend alpha",
|
34
|
+
"category": "blend",
|
35
|
+
"expects": "number",
|
36
|
+
"default": 100,
|
37
|
+
"min": 0,
|
38
|
+
"max": 100,
|
39
|
+
"depends": [
|
40
|
+
"blend"
|
41
|
+
],
|
42
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendalpha",
|
43
|
+
"short_description": "Changes the alpha of the blend image."
|
44
|
+
},
|
45
|
+
"bc": {
|
46
|
+
"display_name": "blend crop",
|
47
|
+
"category": "blend",
|
48
|
+
"expects": "list",
|
49
|
+
"possible_values": [
|
50
|
+
"top",
|
51
|
+
"bottom",
|
52
|
+
"left",
|
53
|
+
"right",
|
54
|
+
"faces"
|
55
|
+
],
|
56
|
+
"depends": [
|
57
|
+
"blend"
|
58
|
+
],
|
59
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendcrop",
|
60
|
+
"short_description": "Specifies the type of crop for blend images."
|
61
|
+
},
|
62
|
+
"bf": {
|
63
|
+
"display_name": "blend fit",
|
64
|
+
"category": "blend",
|
65
|
+
"expects": "string",
|
66
|
+
"default": "clip",
|
67
|
+
"possible_values": [
|
68
|
+
"clamp",
|
69
|
+
"clip",
|
70
|
+
"crop",
|
71
|
+
"scale",
|
72
|
+
"max"
|
73
|
+
],
|
74
|
+
"depends": [
|
75
|
+
"blend"
|
76
|
+
],
|
77
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendfit",
|
78
|
+
"short_description": "Specifies the fit mode for blend images."
|
79
|
+
},
|
80
|
+
"bg": {
|
81
|
+
"display_name": "background color",
|
82
|
+
"category": "background",
|
83
|
+
"expects": "hex_color",
|
84
|
+
"default": "fff",
|
85
|
+
"url": "https://www.imgix.com/docs/reference/background#param-bg",
|
86
|
+
"short_description": "Colors the background of padded images."
|
87
|
+
},
|
88
|
+
"bh": {
|
89
|
+
"display_name": "blend height",
|
90
|
+
"category": "blend",
|
91
|
+
"expects": "number",
|
92
|
+
"min": 0,
|
93
|
+
"depends": [
|
94
|
+
"blend"
|
95
|
+
],
|
96
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendheight",
|
97
|
+
"short_description": "Adjusts the height of the blend image."
|
98
|
+
},
|
99
|
+
"blend": {
|
100
|
+
"display_name": "blend",
|
101
|
+
"category": "blend",
|
102
|
+
"expects": [
|
103
|
+
"hex_color",
|
104
|
+
"url"
|
105
|
+
],
|
106
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blend",
|
107
|
+
"short_description": "Specifies the location of the blend image."
|
108
|
+
},
|
109
|
+
"blur": {
|
110
|
+
"display_name": "blur",
|
111
|
+
"category": "stylize",
|
112
|
+
"expects": "number",
|
113
|
+
"default": 0,
|
114
|
+
"min": 0,
|
115
|
+
"max": 2000,
|
116
|
+
"url": "https://www.imgix.com/docs/reference/stylize#param-blur",
|
117
|
+
"short_description": "Applies a gaussian blur to an image."
|
118
|
+
},
|
119
|
+
"bm": {
|
120
|
+
"display_name": "blend mode",
|
121
|
+
"category": "blend",
|
122
|
+
"expects": "string",
|
123
|
+
"default": "overlay",
|
124
|
+
"possible_values": [
|
125
|
+
"color",
|
126
|
+
"burn",
|
127
|
+
"dodge",
|
128
|
+
"darken",
|
129
|
+
"difference",
|
130
|
+
"exclusion",
|
131
|
+
"hardlight",
|
132
|
+
"hue",
|
133
|
+
"lighten",
|
134
|
+
"luminosity",
|
135
|
+
"multiply",
|
136
|
+
"overlay",
|
137
|
+
"saturation",
|
138
|
+
"screen",
|
139
|
+
"softlight"
|
140
|
+
],
|
141
|
+
"depends": [
|
142
|
+
"blend"
|
143
|
+
],
|
144
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendmode",
|
145
|
+
"short_description": "Sets the blend mode for a blend image."
|
146
|
+
},
|
147
|
+
"border": {
|
148
|
+
"display_name": "border",
|
149
|
+
"category": "border_and_padding",
|
150
|
+
"expects": "list",
|
151
|
+
"length": 2,
|
152
|
+
"url": "https://www.imgix.com/docs/reference/border-padding#param-border",
|
153
|
+
"short_description": "Applies a border to an image."
|
154
|
+
},
|
155
|
+
"bp": {
|
156
|
+
"display_name": "blend padding",
|
157
|
+
"category": "blend",
|
158
|
+
"expects": "number",
|
159
|
+
"default": 0,
|
160
|
+
"min": 0,
|
161
|
+
"depends": [
|
162
|
+
"blend"
|
163
|
+
],
|
164
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendpadding",
|
165
|
+
"short_description": "Applies padding to the blend image."
|
166
|
+
},
|
167
|
+
"bri": {
|
168
|
+
"display_name": "brightness",
|
169
|
+
"category": "adjustment",
|
170
|
+
"expects": "number",
|
171
|
+
"default": 0,
|
172
|
+
"min": -100,
|
173
|
+
"max": 100,
|
174
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-bri",
|
175
|
+
"short_description": "Adjusts the brightness of the source image."
|
176
|
+
},
|
177
|
+
"bs": {
|
178
|
+
"display_name": "blend size",
|
179
|
+
"category": "blend",
|
180
|
+
"expects": "string",
|
181
|
+
"possible_values": [
|
182
|
+
"inherit"
|
183
|
+
],
|
184
|
+
"depends": [
|
185
|
+
"blend"
|
186
|
+
],
|
187
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendsize",
|
188
|
+
"short_description": "Adjusts the size of the blend image."
|
189
|
+
},
|
190
|
+
"bw": {
|
191
|
+
"display_name": "blend width",
|
192
|
+
"category": "blend",
|
193
|
+
"expects": "number",
|
194
|
+
"min": 0,
|
195
|
+
"depends": [
|
196
|
+
"blend"
|
197
|
+
],
|
198
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendwidth",
|
199
|
+
"short_description": "Adjusts the width of the blend image."
|
200
|
+
},
|
201
|
+
"bx": {
|
202
|
+
"display_name": "blend x",
|
203
|
+
"category": "blend",
|
204
|
+
"expects": "number",
|
205
|
+
"default": 0,
|
206
|
+
"min": 0,
|
207
|
+
"depends": [
|
208
|
+
"blend"
|
209
|
+
],
|
210
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendx",
|
211
|
+
"short_description": "Adjusts the x-offset of the blend image relative to its parent."
|
212
|
+
},
|
213
|
+
"by": {
|
214
|
+
"display_name": "blend y",
|
215
|
+
"category": "blend",
|
216
|
+
"expects": "number",
|
217
|
+
"default": 0,
|
218
|
+
"min": 0,
|
219
|
+
"depends": [
|
220
|
+
"blend"
|
221
|
+
],
|
222
|
+
"url": "https://www.imgix.com/docs/reference/blend#param-blendy",
|
223
|
+
"short_description": "Adjusts the y-offset of the blend image relative to its parent."
|
224
|
+
},
|
225
|
+
"chromasub": {
|
226
|
+
"display_name": "chroma subsampling",
|
227
|
+
"category": "format",
|
228
|
+
"expects": "integer",
|
229
|
+
"default": 420,
|
230
|
+
"possible_values": [
|
231
|
+
444,
|
232
|
+
422,
|
233
|
+
420
|
234
|
+
],
|
235
|
+
"url": "https://www.imgix.com/docs/reference/format#param-chromasub",
|
236
|
+
"short_description": "Specifies the output chroma subsampling rate."
|
237
|
+
},
|
238
|
+
"colorquant": {
|
239
|
+
"display_name": "color quantization",
|
240
|
+
"category": "format",
|
241
|
+
"expects": "integer",
|
242
|
+
"min": 2,
|
243
|
+
"max": 256,
|
244
|
+
"url": "https://www.imgix.com/docs/reference/format#param-colorquant",
|
245
|
+
"short_description": "Limits the number of unique colors in an image."
|
246
|
+
},
|
247
|
+
"colors": {
|
248
|
+
"display_name": "color count",
|
249
|
+
"category": "palette",
|
250
|
+
"expects": "integer",
|
251
|
+
"default": 6,
|
252
|
+
"min": 0,
|
253
|
+
"max": 16,
|
254
|
+
"depends": [
|
255
|
+
"palette"
|
256
|
+
],
|
257
|
+
"url": "https://www.imgix.com/docs/reference/palette#param-colors",
|
258
|
+
"short_description": "Specifies how many colors to include in a palette-extraction response."
|
259
|
+
},
|
260
|
+
"con": {
|
261
|
+
"display_name": "contrast",
|
262
|
+
"category": "adjustment",
|
263
|
+
"expects": "number",
|
264
|
+
"default": 0,
|
265
|
+
"min": -100,
|
266
|
+
"max": 100,
|
267
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-con",
|
268
|
+
"short_description": "Adjusts the contrast of the source image."
|
269
|
+
},
|
270
|
+
"crop": {
|
271
|
+
"display_name": "crop mode",
|
272
|
+
"category": "size",
|
273
|
+
"expects": "list",
|
274
|
+
"possible_values": [
|
275
|
+
"top",
|
276
|
+
"bottom",
|
277
|
+
"left",
|
278
|
+
"right",
|
279
|
+
"faces"
|
280
|
+
],
|
281
|
+
"depends": [
|
282
|
+
"fit=crop"
|
283
|
+
],
|
284
|
+
"url": "https://www.imgix.com/docs/reference/size#param-crop",
|
285
|
+
"short_description": "Specifies how to crop an image."
|
286
|
+
},
|
287
|
+
"cs": {
|
288
|
+
"display_name": "colorspace",
|
289
|
+
"category": "format",
|
290
|
+
"expects": "string",
|
291
|
+
"possible_values": [
|
292
|
+
"srgb",
|
293
|
+
"adobergb1998"
|
294
|
+
],
|
295
|
+
"short_description": "Specifies the color space of the output image."
|
296
|
+
},
|
297
|
+
"dl": {
|
298
|
+
"display_name": "download",
|
299
|
+
"category": "format",
|
300
|
+
"expects": "string",
|
301
|
+
"url": "https://www.imgix.com/docs/reference/format#param-dl",
|
302
|
+
"short_description": "Marks a URL should use send-file to deliver its response."
|
303
|
+
},
|
304
|
+
"dpr": {
|
305
|
+
"display_name": "device pixel ratio",
|
306
|
+
"category": "pixel_density",
|
307
|
+
"expects": "number",
|
308
|
+
"default": 1,
|
309
|
+
"min": 0.75,
|
310
|
+
"max": 8,
|
311
|
+
"url": "https://www.imgix.com/docs/reference/pixeldensity#param-dpr",
|
312
|
+
"short_description": "Adjusts the device-pixel-ratio of the output image."
|
313
|
+
},
|
314
|
+
"exp": {
|
315
|
+
"display_name": "exposure",
|
316
|
+
"category": "adjustment",
|
317
|
+
"expects": "number",
|
318
|
+
"default": 0,
|
319
|
+
"min": -100,
|
320
|
+
"max": 100,
|
321
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-exp",
|
322
|
+
"short_description": "Adjusts the exposure of the output image."
|
323
|
+
},
|
324
|
+
"faceindex": {
|
325
|
+
"display_name": "face index",
|
326
|
+
"category": "face_detection",
|
327
|
+
"expects": "integer",
|
328
|
+
"min": 1,
|
329
|
+
"url": "https://www.imgix.com/docs/reference/face-detection#param-faceindex",
|
330
|
+
"short_description": "Selects a face to crop to."
|
331
|
+
},
|
332
|
+
"facepad": {
|
333
|
+
"display_name": "face padding",
|
334
|
+
"category": "face_detection",
|
335
|
+
"expects": "number",
|
336
|
+
"default": 1,
|
337
|
+
"min": 0,
|
338
|
+
"url": "https://www.imgix.com/docs/reference/face-detection#param-facepad",
|
339
|
+
"short_description": "Adjusts padding around a selected face."
|
340
|
+
},
|
341
|
+
"fit": {
|
342
|
+
"display_name": "fit mode",
|
343
|
+
"category": "size",
|
344
|
+
"expects": "string",
|
345
|
+
"default": "clip",
|
346
|
+
"possible_values": [
|
347
|
+
"clamp",
|
348
|
+
"clip",
|
349
|
+
"crop",
|
350
|
+
"facearea",
|
351
|
+
"fill",
|
352
|
+
"max",
|
353
|
+
"min",
|
354
|
+
"scale"
|
355
|
+
],
|
356
|
+
"aliases": [
|
357
|
+
"f"
|
358
|
+
],
|
359
|
+
"url": "https://www.imgix.com/docs/reference/size#param-fit",
|
360
|
+
"short_description": "Specifies how to map the source image to the output image dimensions."
|
361
|
+
},
|
362
|
+
"flip": {
|
363
|
+
"display_name": "flip direction",
|
364
|
+
"category": "rotation",
|
365
|
+
"expects": "string",
|
366
|
+
"possible_values": [
|
367
|
+
"h",
|
368
|
+
"v",
|
369
|
+
"hv"
|
370
|
+
],
|
371
|
+
"url": "https://www.imgix.com/docs/reference/rotation#param-flip",
|
372
|
+
"short_description": "Flips an image on a specified axis."
|
373
|
+
},
|
374
|
+
"fm": {
|
375
|
+
"display_name": "output format",
|
376
|
+
"category": "format",
|
377
|
+
"expects": "string",
|
378
|
+
"possible_values": [
|
379
|
+
"gif",
|
380
|
+
"jpg",
|
381
|
+
"jp2",
|
382
|
+
"json",
|
383
|
+
"jxr",
|
384
|
+
"pjpg",
|
385
|
+
"mp4",
|
386
|
+
"png",
|
387
|
+
"png8",
|
388
|
+
"png32",
|
389
|
+
"webp"
|
390
|
+
],
|
391
|
+
"url": "https://www.imgix.com/docs/reference/format#param-fm",
|
392
|
+
"short_description": "Changes the format of the output image."
|
393
|
+
},
|
394
|
+
"gam": {
|
395
|
+
"display_name": "gamma",
|
396
|
+
"category": "adjustment",
|
397
|
+
"expects": "number",
|
398
|
+
"default": 0,
|
399
|
+
"min": -100,
|
400
|
+
"max": 100,
|
401
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-gam",
|
402
|
+
"short_description": "Adjusts the gamma of the source image."
|
403
|
+
},
|
404
|
+
"h": {
|
405
|
+
"display_name": "height",
|
406
|
+
"category": "size",
|
407
|
+
"expects": [
|
408
|
+
"number",
|
409
|
+
"unit_scalar"
|
410
|
+
],
|
411
|
+
"url": "https://www.imgix.com/docs/reference/size#param-h",
|
412
|
+
"short_description": "Adjusts the height of the output image."
|
413
|
+
},
|
414
|
+
"high": {
|
415
|
+
"display_name": "high",
|
416
|
+
"category": "adjustment",
|
417
|
+
"expects": "number",
|
418
|
+
"default": 0,
|
419
|
+
"min": -100,
|
420
|
+
"max": 100,
|
421
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-high",
|
422
|
+
"short_description": "Adjusts the highlights of the source image."
|
423
|
+
},
|
424
|
+
"htn": {
|
425
|
+
"display_name": "halftone",
|
426
|
+
"category": "stylize",
|
427
|
+
"expects": "number",
|
428
|
+
"default": 0,
|
429
|
+
"min": 0,
|
430
|
+
"max": 100,
|
431
|
+
"url": "https://www.imgix.com/docs/reference/stylize#param-htn",
|
432
|
+
"short_description": "Applies a half-tone effect to the source image."
|
433
|
+
},
|
434
|
+
"hue": {
|
435
|
+
"display_name": "hue shift",
|
436
|
+
"category": "adjustment",
|
437
|
+
"expects": "number",
|
438
|
+
"default": 0,
|
439
|
+
"min": 0,
|
440
|
+
"max": 360,
|
441
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-hue",
|
442
|
+
"short_description": "Adjusts the hue of the source image."
|
443
|
+
},
|
444
|
+
"invert": {
|
445
|
+
"display_name": "invert",
|
446
|
+
"category": "adjustment",
|
447
|
+
"expects": "string",
|
448
|
+
"possible_values": [
|
449
|
+
"true"
|
450
|
+
],
|
451
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-invert",
|
452
|
+
"short_description": "Inverts the colors on the source image."
|
453
|
+
},
|
454
|
+
"lossless": {
|
455
|
+
"display_name": "lossless",
|
456
|
+
"category": "format",
|
457
|
+
"expects": "integer",
|
458
|
+
"default": 0,
|
459
|
+
"possible_values": [
|
460
|
+
0,
|
461
|
+
1
|
462
|
+
],
|
463
|
+
"url": "https://www.imgix.com/docs/reference/format#param-fm",
|
464
|
+
"short_description": "Specifies that the output image should be a lossless variant."
|
465
|
+
},
|
466
|
+
"mark": {
|
467
|
+
"display_name": "watermark image",
|
468
|
+
"category": "watermark",
|
469
|
+
"expects": "url",
|
470
|
+
"aliases": [
|
471
|
+
"m"
|
472
|
+
],
|
473
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-mark",
|
474
|
+
"short_description": "Specifies the location of the watermark image."
|
475
|
+
},
|
476
|
+
"markalign": {
|
477
|
+
"display_name": "watermark alignment mode",
|
478
|
+
"category": "watermark",
|
479
|
+
"expects": "list",
|
480
|
+
"possible_values": [
|
481
|
+
"top",
|
482
|
+
"middle",
|
483
|
+
"bottom",
|
484
|
+
"left",
|
485
|
+
"center",
|
486
|
+
"right"
|
487
|
+
],
|
488
|
+
"aliases": [
|
489
|
+
"ma"
|
490
|
+
],
|
491
|
+
"depends": [
|
492
|
+
"mark"
|
493
|
+
],
|
494
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markalign",
|
495
|
+
"short_description": "Changes the watermark alignment relative to the parent image."
|
496
|
+
},
|
497
|
+
"markalpha": {
|
498
|
+
"display_name": "watermark alpha",
|
499
|
+
"category": "watermark",
|
500
|
+
"expects": "integer",
|
501
|
+
"default": 100,
|
502
|
+
"min": 0,
|
503
|
+
"max": 100,
|
504
|
+
"depends": [
|
505
|
+
"mark"
|
506
|
+
],
|
507
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markalpha",
|
508
|
+
"short_description": "Changes the alpha of the watermark image."
|
509
|
+
},
|
510
|
+
"markbase": {
|
511
|
+
"display_name": "watermark url base",
|
512
|
+
"category": "watermark",
|
513
|
+
"expects": "url",
|
514
|
+
"aliases": [
|
515
|
+
"mb"
|
516
|
+
],
|
517
|
+
"depends": [
|
518
|
+
"mark"
|
519
|
+
],
|
520
|
+
"short_description": "Changes base URL of the watermark image."
|
521
|
+
},
|
522
|
+
"markfit": {
|
523
|
+
"display_name": "watermark fit mode",
|
524
|
+
"category": "watermark",
|
525
|
+
"expects": "string",
|
526
|
+
"default": "clip",
|
527
|
+
"possible_values": [
|
528
|
+
"clip",
|
529
|
+
"crop",
|
530
|
+
"fill",
|
531
|
+
"max",
|
532
|
+
"scale"
|
533
|
+
],
|
534
|
+
"aliases": [
|
535
|
+
"mf"
|
536
|
+
],
|
537
|
+
"depends": [
|
538
|
+
"mark",
|
539
|
+
"markw",
|
540
|
+
"markh"
|
541
|
+
],
|
542
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markfit",
|
543
|
+
"short_description": "Specifies the fit mode for watermark images."
|
544
|
+
},
|
545
|
+
"markh": {
|
546
|
+
"display_name": "watermark height",
|
547
|
+
"category": "watermark",
|
548
|
+
"expects": [
|
549
|
+
"number",
|
550
|
+
"unit_scalar"
|
551
|
+
],
|
552
|
+
"aliases": [
|
553
|
+
"mh"
|
554
|
+
],
|
555
|
+
"depends": [
|
556
|
+
"mark"
|
557
|
+
],
|
558
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markh",
|
559
|
+
"short_description": "Adjusts the height of the watermark image."
|
560
|
+
},
|
561
|
+
"markpad": {
|
562
|
+
"display_name": "watermark padding",
|
563
|
+
"category": "watermark",
|
564
|
+
"expects": "number",
|
565
|
+
"default": 10,
|
566
|
+
"aliases": [
|
567
|
+
"mp"
|
568
|
+
],
|
569
|
+
"depends": [
|
570
|
+
"mark"
|
571
|
+
],
|
572
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markpad",
|
573
|
+
"short_description": "Applies padding to the watermark image."
|
574
|
+
},
|
575
|
+
"markscale": {
|
576
|
+
"display_name": "watermark scale",
|
577
|
+
"category": "watermark",
|
578
|
+
"expects": "number",
|
579
|
+
"min": 0,
|
580
|
+
"max": 100,
|
581
|
+
"aliases": [
|
582
|
+
"ms"
|
583
|
+
],
|
584
|
+
"depends": [
|
585
|
+
"mark"
|
586
|
+
],
|
587
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markscale",
|
588
|
+
"short_description": "Adjusts the scale of the watermark image."
|
589
|
+
},
|
590
|
+
"markw": {
|
591
|
+
"display_name": "watermark width",
|
592
|
+
"category": "watermark",
|
593
|
+
"expects": [
|
594
|
+
"number",
|
595
|
+
"unit_scalar"
|
596
|
+
],
|
597
|
+
"aliases": [
|
598
|
+
"mw"
|
599
|
+
],
|
600
|
+
"depends": [
|
601
|
+
"mark"
|
602
|
+
],
|
603
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markw",
|
604
|
+
"short_description": "Adjusts the width of the watermark image."
|
605
|
+
},
|
606
|
+
"markx": {
|
607
|
+
"display_name": "watermark x-position",
|
608
|
+
"category": "watermark",
|
609
|
+
"expects": "integer",
|
610
|
+
"aliases": [
|
611
|
+
"mx"
|
612
|
+
],
|
613
|
+
"depends": [
|
614
|
+
"mark"
|
615
|
+
],
|
616
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-markx",
|
617
|
+
"short_description": "Adjusts the x-offset of the watermark image relative to its parent."
|
618
|
+
},
|
619
|
+
"marky": {
|
620
|
+
"display_name": "watermark y-position",
|
621
|
+
"category": "watermark",
|
622
|
+
"expects": "integer",
|
623
|
+
"aliases": [
|
624
|
+
"my"
|
625
|
+
],
|
626
|
+
"depends": [
|
627
|
+
"mark"
|
628
|
+
],
|
629
|
+
"url": "https://www.imgix.com/docs/reference/watermark#param-marky",
|
630
|
+
"short_description": "Adjusts the y-offset of the watermark image relative to its parent."
|
631
|
+
},
|
632
|
+
"mask": {
|
633
|
+
"display_name": "mask",
|
634
|
+
"category": "mask",
|
635
|
+
"expects": [
|
636
|
+
"string",
|
637
|
+
"url"
|
638
|
+
],
|
639
|
+
"possible_values": [
|
640
|
+
"ellipse"
|
641
|
+
],
|
642
|
+
"url": "https://www.imgix.com/docs/reference/mask#param-mask",
|
643
|
+
"short_description": "Specifies the location of the mask image."
|
644
|
+
},
|
645
|
+
"mono": {
|
646
|
+
"display_name": "monochrome",
|
647
|
+
"category": "stylize",
|
648
|
+
"expects": "hex_color",
|
649
|
+
"aliases": [
|
650
|
+
"monochrome"
|
651
|
+
],
|
652
|
+
"url": "https://www.imgix.com/docs/reference/stylize#param-mono",
|
653
|
+
"short_description": "Applies a monochrome effect to the source image."
|
654
|
+
},
|
655
|
+
"nr": {
|
656
|
+
"display_name": "noise blur",
|
657
|
+
"category": "noise",
|
658
|
+
"expects": "number",
|
659
|
+
"default": 20,
|
660
|
+
"min": -100,
|
661
|
+
"max": 100,
|
662
|
+
"url": "https://www.imgix.com/docs/reference/noise#param-nr",
|
663
|
+
"short_description": "Reduces the noise in an image."
|
664
|
+
},
|
665
|
+
"nrs": {
|
666
|
+
"display_name": "noise sharpen",
|
667
|
+
"category": "noise",
|
668
|
+
"expects": "number",
|
669
|
+
"default": 20,
|
670
|
+
"min": -100,
|
671
|
+
"max": 100,
|
672
|
+
"url": "https://www.imgix.com/docs/reference/noise#param-nrs",
|
673
|
+
"short_description": "Provides a threshold by which to sharpen an image."
|
674
|
+
},
|
675
|
+
"or": {
|
676
|
+
"display_name": "orientation",
|
677
|
+
"category": "rotation",
|
678
|
+
"expects": "integer",
|
679
|
+
"possible_values": [
|
680
|
+
0,
|
681
|
+
1,
|
682
|
+
2,
|
683
|
+
3,
|
684
|
+
4,
|
685
|
+
5,
|
686
|
+
6,
|
687
|
+
7,
|
688
|
+
8,
|
689
|
+
90,
|
690
|
+
180,
|
691
|
+
270
|
692
|
+
],
|
693
|
+
"aliases": [
|
694
|
+
"orient"
|
695
|
+
],
|
696
|
+
"url": "https://www.imgix.com/docs/reference/rotation#param-or",
|
697
|
+
"short_description": "Changes the image orientation."
|
698
|
+
},
|
699
|
+
"pad": {
|
700
|
+
"display_name": "padding",
|
701
|
+
"category": "border_and_padding",
|
702
|
+
"expects": "integer",
|
703
|
+
"default": 0,
|
704
|
+
"min": 0,
|
705
|
+
"url": "https://www.imgix.com/docs/reference/border-padding#param-pad",
|
706
|
+
"short_description": "Pads an image."
|
707
|
+
},
|
708
|
+
"page": {
|
709
|
+
"display_name": "pdf page number",
|
710
|
+
"category": "pdf",
|
711
|
+
"expects": "integer",
|
712
|
+
"default": 1,
|
713
|
+
"min": 1,
|
714
|
+
"url": "https://www.imgix.com/docs/reference/pdf#param-page",
|
715
|
+
"short_description": "Selects a page from a PDF for display."
|
716
|
+
},
|
717
|
+
"palette": {
|
718
|
+
"display_name": "palette extraction",
|
719
|
+
"category": "palette",
|
720
|
+
"expects": "string",
|
721
|
+
"possible_values": [
|
722
|
+
"css",
|
723
|
+
"json"
|
724
|
+
],
|
725
|
+
"url": "https://www.imgix.com/docs/reference/palette#param-palette",
|
726
|
+
"short_description": "Specifies an output format for palette-extraction."
|
727
|
+
},
|
728
|
+
"prefix": {
|
729
|
+
"display_name": "css prefix",
|
730
|
+
"category": "palette",
|
731
|
+
"expects": "string",
|
732
|
+
"default": "image",
|
733
|
+
"depends": [
|
734
|
+
"palette=css"
|
735
|
+
],
|
736
|
+
"url": "https://www.imgix.com/docs/reference/palette#param-prefix",
|
737
|
+
"short_description": "Specifies a CSS prefix for all classes in palette-extraction."
|
738
|
+
},
|
739
|
+
"px": {
|
740
|
+
"display_name": "pixellate",
|
741
|
+
"category": "stylize",
|
742
|
+
"expects": "number",
|
743
|
+
"default": 0,
|
744
|
+
"min": 0,
|
745
|
+
"max": 100,
|
746
|
+
"url": "https://www.imgix.com/docs/reference/stylize#param-px",
|
747
|
+
"short_description": "Applies a pixelation effect to an image."
|
748
|
+
},
|
749
|
+
"q": {
|
750
|
+
"display_name": "output quality",
|
751
|
+
"category": "format",
|
752
|
+
"expects": "number",
|
753
|
+
"default": 75,
|
754
|
+
"min": 0,
|
755
|
+
"max": 100,
|
756
|
+
"depends": [
|
757
|
+
"fm=jpg",
|
758
|
+
"fm=pjpg",
|
759
|
+
"fm=webp",
|
760
|
+
"fm=jxr"
|
761
|
+
],
|
762
|
+
"url": "https://www.imgix.com/docs/reference/format#param-q",
|
763
|
+
"short_description": "Adjusts the quality of an output image."
|
764
|
+
},
|
765
|
+
"rect": {
|
766
|
+
"display_name": "crop rectangle",
|
767
|
+
"category": "size",
|
768
|
+
"expects": "rectangle",
|
769
|
+
"url": "https://www.imgix.com/docs/reference/size#param-rect",
|
770
|
+
"short_description": "Crops an image to a specified rectangle."
|
771
|
+
},
|
772
|
+
"rot": {
|
773
|
+
"display_name": "rotation angle",
|
774
|
+
"category": "rotation",
|
775
|
+
"expects": "number",
|
776
|
+
"default": 0,
|
777
|
+
"min": 0,
|
778
|
+
"max": 359,
|
779
|
+
"url": "https://www.imgix.com/docs/reference/rotation#param-rot",
|
780
|
+
"short_description": "Rotates an image by a specified number of degrees."
|
781
|
+
},
|
782
|
+
"sat": {
|
783
|
+
"display_name": "saturation",
|
784
|
+
"category": "adjustment",
|
785
|
+
"expects": "number",
|
786
|
+
"default": 0,
|
787
|
+
"min": -100,
|
788
|
+
"max": 100,
|
789
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-sat",
|
790
|
+
"short_description": "Adjusts the saturation of an image."
|
791
|
+
},
|
792
|
+
"sepia": {
|
793
|
+
"display_name": "sepia",
|
794
|
+
"category": "stylize",
|
795
|
+
"expects": "number",
|
796
|
+
"default": 0,
|
797
|
+
"min": 0,
|
798
|
+
"max": 100,
|
799
|
+
"url": "https://www.imgix.com/docs/reference/stylize#param-sepia",
|
800
|
+
"short_description": "Applies a sepia effect to an image."
|
801
|
+
},
|
802
|
+
"shad": {
|
803
|
+
"display_name": "shadow",
|
804
|
+
"category": "adjustment",
|
805
|
+
"expects": "number",
|
806
|
+
"default": 0,
|
807
|
+
"min": -100,
|
808
|
+
"max": 100,
|
809
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-shad",
|
810
|
+
"short_description": "Adjusts the highlights of the source image."
|
811
|
+
},
|
812
|
+
"sharp": {
|
813
|
+
"display_name": "sharpen",
|
814
|
+
"category": "adjustment",
|
815
|
+
"expects": "number",
|
816
|
+
"default": 0,
|
817
|
+
"min": 0,
|
818
|
+
"max": 100,
|
819
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-sharp",
|
820
|
+
"short_description": "Adjusts the sharpness of the source image."
|
821
|
+
},
|
822
|
+
"trim": {
|
823
|
+
"display_name": "trim mode",
|
824
|
+
"category": "trim",
|
825
|
+
"expects": "string",
|
826
|
+
"possible_values": [
|
827
|
+
"auto",
|
828
|
+
"color"
|
829
|
+
],
|
830
|
+
"url": "https://www.imgix.com/docs/reference/trim#param-trim",
|
831
|
+
"short_description": "Trims the source image."
|
832
|
+
},
|
833
|
+
"trimcol": {
|
834
|
+
"display_name": "trim color",
|
835
|
+
"category": "trim",
|
836
|
+
"expects": "hex_color",
|
837
|
+
"depends": [
|
838
|
+
"trim=color"
|
839
|
+
],
|
840
|
+
"url": "https://www.imgix.com/docs/reference/trim#param-trimcolor",
|
841
|
+
"short_description": "Specifies a trim color on a trim operation."
|
842
|
+
},
|
843
|
+
"trimmd": {
|
844
|
+
"display_name": "trim mean difference",
|
845
|
+
"category": "trim",
|
846
|
+
"expects": "number",
|
847
|
+
"default": 11,
|
848
|
+
"depends": [
|
849
|
+
"trim=auto"
|
850
|
+
],
|
851
|
+
"url": "https://www.imgix.com/docs/reference/text#param-trimmd",
|
852
|
+
"short_description": "Specifies the mean difference on a trim operation."
|
853
|
+
},
|
854
|
+
"trimsd": {
|
855
|
+
"display_name": "trim standard deviation",
|
856
|
+
"category": "trim",
|
857
|
+
"expects": "number",
|
858
|
+
"default": 10,
|
859
|
+
"depends": [
|
860
|
+
"trim=auto"
|
861
|
+
],
|
862
|
+
"url": "https://www.imgix.com/docs/reference/trim#param-trimsd",
|
863
|
+
"short_description": "Specifies the standard deviation on a trim operation."
|
864
|
+
},
|
865
|
+
"trimtol": {
|
866
|
+
"display_name": "trim tolerance",
|
867
|
+
"category": "trim",
|
868
|
+
"expects": "number",
|
869
|
+
"default": 0,
|
870
|
+
"min": 0,
|
871
|
+
"depends": [
|
872
|
+
"trim=color"
|
873
|
+
],
|
874
|
+
"url": "https://www.imgix.com/docs/reference/trim#param-trimtol",
|
875
|
+
"short_description": "Specifies the tolerance on a trim operation."
|
876
|
+
},
|
877
|
+
"txt": {
|
878
|
+
"display_name": "text",
|
879
|
+
"category": "text",
|
880
|
+
"expects": "string",
|
881
|
+
"aliases": [
|
882
|
+
"t"
|
883
|
+
],
|
884
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txt",
|
885
|
+
"short_description": "Sets the text to render."
|
886
|
+
},
|
887
|
+
"txtalign": {
|
888
|
+
"display_name": "text align",
|
889
|
+
"category": "text",
|
890
|
+
"expects": "list",
|
891
|
+
"possible_values": [
|
892
|
+
"top",
|
893
|
+
"middle",
|
894
|
+
"bottom",
|
895
|
+
"left",
|
896
|
+
"center",
|
897
|
+
"right"
|
898
|
+
],
|
899
|
+
"aliases": [
|
900
|
+
"ta"
|
901
|
+
],
|
902
|
+
"depends": [
|
903
|
+
"txt"
|
904
|
+
],
|
905
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtalign",
|
906
|
+
"short_description": "Sets the alignment of rendered text."
|
907
|
+
},
|
908
|
+
"txtclip": {
|
909
|
+
"display_name": "text clipping",
|
910
|
+
"category": "text",
|
911
|
+
"expects": "string",
|
912
|
+
"default": "end",
|
913
|
+
"possible_values": [
|
914
|
+
"start",
|
915
|
+
"middle",
|
916
|
+
"end"
|
917
|
+
],
|
918
|
+
"depends": [
|
919
|
+
"txt"
|
920
|
+
],
|
921
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtclip",
|
922
|
+
"short_description": "Sets the clipping properties of rendered text."
|
923
|
+
},
|
924
|
+
"txtclr": {
|
925
|
+
"display_name": "text color",
|
926
|
+
"category": "text",
|
927
|
+
"expects": "hex_color",
|
928
|
+
"aliases": [
|
929
|
+
"txtclr",
|
930
|
+
"tc"
|
931
|
+
],
|
932
|
+
"depends": [
|
933
|
+
"txt"
|
934
|
+
],
|
935
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtclr",
|
936
|
+
"short_description": "Specifies the color of rendered text"
|
937
|
+
},
|
938
|
+
"txtfit": {
|
939
|
+
"display_name": "text fit mode",
|
940
|
+
"category": "text",
|
941
|
+
"expects": "string",
|
942
|
+
"possible_values": [
|
943
|
+
"max"
|
944
|
+
],
|
945
|
+
"depends": [
|
946
|
+
"txt"
|
947
|
+
],
|
948
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtfit",
|
949
|
+
"short_description": "Specifies the fit approach for rendered text."
|
950
|
+
},
|
951
|
+
"txtfont": {
|
952
|
+
"display_name": "text font",
|
953
|
+
"category": "text",
|
954
|
+
"expects": "list",
|
955
|
+
"aliases": [
|
956
|
+
"tf"
|
957
|
+
],
|
958
|
+
"depends": [
|
959
|
+
"txt"
|
960
|
+
],
|
961
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtfont",
|
962
|
+
"short_description": "Selects a font for rendered text."
|
963
|
+
},
|
964
|
+
"txtline": {
|
965
|
+
"display_name": "text outline",
|
966
|
+
"category": "text",
|
967
|
+
"expects": "number",
|
968
|
+
"default": 0,
|
969
|
+
"min": 0,
|
970
|
+
"aliases": [
|
971
|
+
"tl"
|
972
|
+
],
|
973
|
+
"depends": [
|
974
|
+
"txt"
|
975
|
+
],
|
976
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtline",
|
977
|
+
"short_description": "Outlines the rendered text with a specified color."
|
978
|
+
},
|
979
|
+
"txtlineclr": {
|
980
|
+
"display_name": "text outline color",
|
981
|
+
"category": "text",
|
982
|
+
"expects": "hex_color",
|
983
|
+
"default": "FFF",
|
984
|
+
"depends": [
|
985
|
+
"txt",
|
986
|
+
"txtline"
|
987
|
+
],
|
988
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtlineclr",
|
989
|
+
"short_description": "Specifies a text outline color."
|
990
|
+
},
|
991
|
+
"txtpad": {
|
992
|
+
"display_name": "text padding",
|
993
|
+
"category": "text",
|
994
|
+
"expects": "number",
|
995
|
+
"default": 10,
|
996
|
+
"aliases": [
|
997
|
+
"tp"
|
998
|
+
],
|
999
|
+
"depends": [
|
1000
|
+
"txt"
|
1001
|
+
],
|
1002
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtpad",
|
1003
|
+
"short_description": "Specifies padding for rendered text."
|
1004
|
+
},
|
1005
|
+
"txtshad": {
|
1006
|
+
"display_name": "text shadow",
|
1007
|
+
"category": "text",
|
1008
|
+
"expects": "number",
|
1009
|
+
"default": 0,
|
1010
|
+
"aliases": [
|
1011
|
+
"tsh"
|
1012
|
+
],
|
1013
|
+
"depends": [
|
1014
|
+
"txt"
|
1015
|
+
],
|
1016
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtshad",
|
1017
|
+
"short_description": "Applies a shadow to rendered text."
|
1018
|
+
},
|
1019
|
+
"txtsize": {
|
1020
|
+
"display_name": "text font size",
|
1021
|
+
"category": "text",
|
1022
|
+
"expects": "number",
|
1023
|
+
"default": 12,
|
1024
|
+
"min": 0,
|
1025
|
+
"aliases": [
|
1026
|
+
"tsz"
|
1027
|
+
],
|
1028
|
+
"depends": [
|
1029
|
+
"txt"
|
1030
|
+
],
|
1031
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtsize",
|
1032
|
+
"short_description": "Sets the size of rendered text."
|
1033
|
+
},
|
1034
|
+
"txtwidth": {
|
1035
|
+
"display_name": "text width",
|
1036
|
+
"category": "text",
|
1037
|
+
"expects": "number",
|
1038
|
+
"min": 0,
|
1039
|
+
"depends": [
|
1040
|
+
"txt"
|
1041
|
+
],
|
1042
|
+
"url": "https://www.imgix.com/docs/reference/text#param-txtwidth",
|
1043
|
+
"short_description": "Sets the width of rendered text."
|
1044
|
+
},
|
1045
|
+
"usm": {
|
1046
|
+
"display_name": "unsharp mask",
|
1047
|
+
"category": "adjustment",
|
1048
|
+
"expects": "number",
|
1049
|
+
"default": 0,
|
1050
|
+
"min": -100,
|
1051
|
+
"max": 100,
|
1052
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-usm",
|
1053
|
+
"short_description": "Sharpens the source image using an unsharp mask."
|
1054
|
+
},
|
1055
|
+
"usmrad": {
|
1056
|
+
"display_name": "unsharp mask radius",
|
1057
|
+
"category": "adjustment",
|
1058
|
+
"expects": "number",
|
1059
|
+
"default": 2.5,
|
1060
|
+
"min": 0,
|
1061
|
+
"depends": [
|
1062
|
+
"usm"
|
1063
|
+
],
|
1064
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-usmrad",
|
1065
|
+
"short_description": "Specifies the radius for an unsharp mask operation."
|
1066
|
+
},
|
1067
|
+
"vib": {
|
1068
|
+
"display_name": "vibrance",
|
1069
|
+
"category": "adjustment",
|
1070
|
+
"expects": "number",
|
1071
|
+
"default": 0,
|
1072
|
+
"min": -100,
|
1073
|
+
"max": 100,
|
1074
|
+
"url": "https://www.imgix.com/docs/reference/adjustment#param-vib",
|
1075
|
+
"short_description": "Adjusts the vibrance an image."
|
1076
|
+
},
|
1077
|
+
"w": {
|
1078
|
+
"display_name": "width",
|
1079
|
+
"category": "size",
|
1080
|
+
"expects": [
|
1081
|
+
"number",
|
1082
|
+
"unit_scalar"
|
1083
|
+
],
|
1084
|
+
"url": "https://www.imgix.com/docs/reference/size#param-w",
|
1085
|
+
"short_description": "Adjusts the width of the output image."
|
1086
|
+
}
|
1087
|
+
},
|
1088
|
+
"deprecatedParameters": {
|
1089
|
+
"class": {
|
1090
|
+
"display_name": "css class",
|
1091
|
+
"category": "palette",
|
1092
|
+
"expects": "string",
|
1093
|
+
"deprecated": true,
|
1094
|
+
"url": "https://www.imgix.com/docs/reference/palette#param-colors",
|
1095
|
+
"short_description": "Specifies the CSS class to use for palette extraction."
|
1096
|
+
}
|
1097
|
+
},
|
1098
|
+
"experimentalParameters": {
|
1099
|
+
"rott": {
|
1100
|
+
"display_name": "rotation type",
|
1101
|
+
"category": "rotation",
|
1102
|
+
"expects": "string",
|
1103
|
+
"possible_values": [
|
1104
|
+
"pivot",
|
1105
|
+
"straighten"
|
1106
|
+
],
|
1107
|
+
"experimental": true,
|
1108
|
+
"short_description": "Changes the rotation type."
|
1109
|
+
},
|
1110
|
+
"skin": {
|
1111
|
+
"display_name": "skin detection",
|
1112
|
+
"category": "misc",
|
1113
|
+
"expects": "string",
|
1114
|
+
"possible_values": [
|
1115
|
+
"map"
|
1116
|
+
],
|
1117
|
+
"experimental": true,
|
1118
|
+
"deprectated": true
|
1119
|
+
}
|
1120
|
+
},
|
1121
|
+
"aliases": {
|
1122
|
+
"f": "fit",
|
1123
|
+
"m": "mark",
|
1124
|
+
"ma": "markalign",
|
1125
|
+
"mb": "markbase",
|
1126
|
+
"mf": "markfit",
|
1127
|
+
"mh": "markh",
|
1128
|
+
"mp": "markpad",
|
1129
|
+
"ms": "markscale",
|
1130
|
+
"mw": "markw",
|
1131
|
+
"mx": "markx",
|
1132
|
+
"my": "marky",
|
1133
|
+
"monochrome": "mono",
|
1134
|
+
"orient": "or",
|
1135
|
+
"t": "txt",
|
1136
|
+
"ta": "txtalign",
|
1137
|
+
"txtclr": "txtclr",
|
1138
|
+
"tc": "txtclr",
|
1139
|
+
"tf": "txtfont",
|
1140
|
+
"tl": "txtline",
|
1141
|
+
"tp": "txtpad",
|
1142
|
+
"tsh": "txtshad",
|
1143
|
+
"tsz": "txtsize"
|
1144
|
+
}
|
1145
|
+
}
|