Module: MiniMagick::Configuration
- Included in:
- MiniMagick
- Defined in:
- lib/mini_magick/configuration.rb
Constant Summary collapse
- CLI_DETECTION =
{ imagemagick7: "magick", imagemagick: "mogrify", graphicsmagick: "gm", }
Instance Attribute Summary collapse
-
#cli_path ⇒ String
If you set the path of CLI tools, you can get the path of the executables.
-
#cli_prefix ⇒ String+
Adds a prefix to the CLI command.
-
#debug ⇒ Boolean
When get to
true
, it outputs each command to STDOUT in their shell version. -
#logger ⇒ Logger
Logger for #debug, default is
MiniMagick::Logger.new(STDOUT)
, but you can override it, for example if you want the logs to be written to a file. -
#shell_api ⇒ String
Instructs MiniMagick how to execute the shell commands.
-
#timeout ⇒ Integer
If you don't want commands to take too long, you can set a timeout (in seconds).
-
#tmpdir ⇒ String
Temporary directory used by MiniMagick, default is
Dir.tmpdir
, but you can override it. -
#validate_on_create ⇒ Boolean
If set to
true
, it willidentify
every newly created image, and raiseMiniMagick::Invalid
if the image is not valid. -
#validate_on_write ⇒ Boolean
If set to
true
, it willidentify
every image that gets written (with Image#write), and raiseMiniMagick::Invalid
if the image is not valid. -
#whiny ⇒ Boolean
If set to
false
, it will not raise errors when ImageMagick returns status code different than 0.
Instance Method Summary collapse
-
#cli ⇒ Symbol
Get ImageMagick or GraphicsMagick.
-
#cli=(value) ⇒ Object
Set whether you want to use ImageMagick or GraphicsMagick.
- #configure {|self| ... } ⇒ Object
-
#reload_tools ⇒ Object
Backwards compatibility.
Instance Attribute Details
#cli_path ⇒ String
If you set the path of CLI tools, you can get the path of the executables.
173 174 175 176 177 178 179 180 181 |
# File 'lib/mini_magick/configuration.rb', line 173 def cli_path if instance_variable_defined?("@cli_path") instance_variable_get("@cli_path") else processor_path = instance_variable_get("@processor_path") if instance_variable_defined?("@processor_path") instance_variable_set("@cli_path", processor_path) end end |
#cli_prefix ⇒ String+
Adds a prefix to the CLI command.
For example, you could use firejail
to run all commands in a sandbox.
Can be a string, or an array of strings.
e.g. 'firejail', or ['firejail', '--force']
24 25 26 |
# File 'lib/mini_magick/configuration.rb', line 24 def cli_prefix @cli_prefix end |
#debug ⇒ Boolean
When get to true
, it outputs each command to STDOUT in their shell
version.
39 40 41 |
# File 'lib/mini_magick/configuration.rb', line 39 def debug @debug end |
#logger ⇒ Logger
Logger for #debug, default is MiniMagick::Logger.new(STDOUT)
, but
you can override it, for example if you want the logs to be written to
a file.
47 48 49 |
# File 'lib/mini_magick/configuration.rb', line 47 def logger @logger end |
#shell_api ⇒ String
Instructs MiniMagick how to execute the shell commands. Available APIs are "open3" (default) and "posix-spawn" (requires the "posix-spawn" gem).
89 90 91 |
# File 'lib/mini_magick/configuration.rb', line 89 def shell_api @shell_api end |
#timeout ⇒ Integer
If you don't want commands to take too long, you can set a timeout (in seconds).
32 33 34 |
# File 'lib/mini_magick/configuration.rb', line 32 def timeout @timeout end |
#tmpdir ⇒ String
Temporary directory used by MiniMagick, default is Dir.tmpdir
, but
you can override it.
54 55 56 |
# File 'lib/mini_magick/configuration.rb', line 54 def tmpdir @tmpdir end |
#validate_on_create ⇒ Boolean
If set to true
, it will identify
every newly created image, and raise
MiniMagick::Invalid
if the image is not valid. Useful for validating
user input, although it adds a bit of overhead. Defaults to true
.
63 64 65 |
# File 'lib/mini_magick/configuration.rb', line 63 def validate_on_create @validate_on_create end |
#validate_on_write ⇒ Boolean
If set to true
, it will identify
every image that gets written (with
Image#write), and raise MiniMagick::Invalid
if the image
is not valid. Useful for validating that processing was sucessful,
although it adds a bit of overhead. Defaults to true
.
72 73 74 |
# File 'lib/mini_magick/configuration.rb', line 72 def validate_on_write @validate_on_write end |
#whiny ⇒ Boolean
If set to false
, it will not raise errors when ImageMagick returns
status code different than 0. Defaults to true
.
80 81 82 |
# File 'lib/mini_magick/configuration.rb', line 80 def whiny @whiny end |
Instance Method Details
#cli ⇒ Symbol
Get ImageMagick or GraphicsMagick.
142 143 144 145 146 147 148 149 150 151 |
# File 'lib/mini_magick/configuration.rb', line 142 def cli if instance_variable_defined?("@cli") instance_variable_get("@cli") else cli = CLI_DETECTION.key(processor) or fail MiniMagick::Error, "You must have ImageMagick or GraphicsMagick installed" instance_variable_set("@cli", cli) end end |
#cli=(value) ⇒ Object
Set whether you want to use ImageMagick or GraphicsMagick.
157 158 159 160 161 162 163 164 165 |
# File 'lib/mini_magick/configuration.rb', line 157 def cli=(value) @cli = value if not CLI_DETECTION.key?(@cli) raise ArgumentError, "CLI has to be set to either :imagemagick, :imagemagick7 or :graphicsmagick" \ ", was set to #{@cli.inspect}" end end |
#configure {|self| ... } ⇒ Object
108 109 110 |
# File 'lib/mini_magick/configuration.rb', line 108 def configure yield self end |
#reload_tools ⇒ Object
Backwards compatibility
193 194 195 |
# File 'lib/mini_magick/configuration.rb', line 193 def reload_tools warn "MiniMagick.reload_tools is deprecated because it is no longer necessary" end |