module MiniMagick::Configuration
Attributes
Set whether you want to use [ImageMagick](www.imagemagick.org) or [GraphicsMagick](www.graphicsmagick.org).
@return [Symbol] `:imagemagick` or `:graphicsmagick`
If you don't have the CLI tools in your PATH, you can set the path to the executables.
@return [String]
When set to `true`, it outputs each command to STDOUT in their shell version.
@return [Boolean]
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.
@return [Logger]
@private (for backwards compatibility)
@private (for backwards compatibility)
Instructs MiniMagick how to execute the shell commands. Available APIs are “open3” (default) and “posix-spawn” (requires the “posix-spawn” gem).
@return [String]
If you don't want commands to take too long, you can set a timeout (in seconds).
@return [Integer]
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`.
@return [Boolean]
If set to `true`, it will `identify` every image that gets written (with {MiniMagick::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`.
@return [Boolean]
If set to `false`, it will not raise errors when ImageMagick returns status code different than 0. Defaults to `true`.
@return [Boolean]
Public Class Methods
# File lib/mini_magick/configuration.rb, line 84 def self.extended(base) base.validate_on_create = true base.validate_on_write = true base.whiny = true base.shell_api = "open3" end
Public Instance Methods
# File lib/mini_magick/configuration.rb, line 131 def cli=(value) @cli = value case @cli when :imagemagick Utilities.which("mogrify") or raise MiniMagick::Error, "ImageMagick is not installed or CLI is not found" when :graphicsmagick Utilities.which("gm") or raise MiniMagick::Error, "GraphicsMagick is not installed or CLI is not found" else raise ArgumentError, "CLI has to be set to either :imagemagick or :graphicsmagick" ", was set to #{@cli.inspect}" end reload_tools end
@yield [self] @example
MiniMagick.configure do |config| config.cli = :graphicsmagick config.timeout = 5 end
# File lib/mini_magick/configuration.rb, line 99 def configure yield self end
# File lib/mini_magick/configuration.rb, line 109 def processor=(processor) @processor = processor.to_s unless ["mogrify", "gm"].include?(@processor) raise ArgumentError, "processor has to be set to either \"mogrify\" or \"gm\"" ", was set to #{@processor.inspect}" end reload_tools end
# File lib/mini_magick/configuration.rb, line 158 def reload_tools MiniMagick::Tool::OptionMethods.instances.each(&:reload_methods) end