Module: MiniMagick::Configuration

Included in:
MiniMagick
Defined in:
lib/mini_magick/configuration.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#cliSymbol

Set whether you want to use [ImageMagick](www.imagemagick.org) or [GraphicsMagick](www.graphicsmagick.org).

Returns:

  • (Symbol)

    ‘:imagemagick` or `:graphicsmagick`



13
14
15
# File 'lib/mini_magick/configuration.rb', line 13

def cli
  @cli
end

#cli_pathString

If you don’t have the CLI tools in your PATH, you can set the path to the executables.

Returns:

  • (String)


23
24
25
# File 'lib/mini_magick/configuration.rb', line 23

def cli_path
  @cli_path
end

#debugBoolean

When set to ‘true`, it outputs each command to STDOUT in their shell version.

Returns:

  • (Boolean)


40
41
42
# File 'lib/mini_magick/configuration.rb', line 40

def debug
  @debug
end

#loggerLogger

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.

Returns:

  • (Logger)


48
49
50
# File 'lib/mini_magick/configuration.rb', line 48

def logger
  @logger
end

#processorObject



15
16
17
# File 'lib/mini_magick/configuration.rb', line 15

def processor
  @processor
end

#processor_pathObject



25
26
27
# File 'lib/mini_magick/configuration.rb', line 25

def processor_path
  @processor_path
end

#shell_apiString

Instructs MiniMagick how to execute the shell commands. Available APIs are “open3” (default) and “posix-spawn” (requires the “posix-spawn” gem).

Returns:

  • (String)


83
84
85
# File 'lib/mini_magick/configuration.rb', line 83

def shell_api
  @shell_api
end

#timeoutInteger

If you don’t want commands to take too long, you can set a timeout (in seconds).

Returns:

  • (Integer)


33
34
35
# File 'lib/mini_magick/configuration.rb', line 33

def timeout
  @timeout
end

#validate_on_createBoolean

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`.

Returns:

  • (Boolean)


57
58
59
# File 'lib/mini_magick/configuration.rb', line 57

def validate_on_create
  @validate_on_create
end

#validate_on_writeBoolean

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`.

Returns:

  • (Boolean)


66
67
68
# File 'lib/mini_magick/configuration.rb', line 66

def validate_on_write
  @validate_on_write
end

#whinyBoolean

If set to ‘false`, it will not raise errors when ImageMagick returns status code different than 0. Defaults to `true`.

Returns:

  • (Boolean)


74
75
76
# File 'lib/mini_magick/configuration.rb', line 74

def whiny
  @whiny
end

Class Method Details

.extended(base) ⇒ Object



85
86
87
88
89
90
91
# File 'lib/mini_magick/configuration.rb', line 85

def self.extended(base)
  base.validate_on_create = true
  base.validate_on_write = true
  base.whiny = true
  base.shell_api = "open3"
  base.logger = Logger.new($stdout).tap { |l| l.level = Logger::INFO }
end

Instance Method Details

#configure {|self| ... } ⇒ Object

Examples:

MiniMagick.configure do |config|
  config.cli = :graphicsmagick
  config.timeout = 5
end

Yields:

  • (self)


101
102
103
# File 'lib/mini_magick/configuration.rb', line 101

def configure
  yield self
end

#reload_toolsObject

Backwards compatibility



151
152
153
# File 'lib/mini_magick/configuration.rb', line 151

def reload_tools
  warn "MiniMagick.reload_tools is deprecated because it is no longer necessary"
end