Class: SiteFuel::External::JPEGTran
- Inherits:
-
AbstractExternalProgram
- Object
- AbstractExternalProgram
- SiteFuel::External::JPEGTran
- Defined in:
- lib/sitefuel/external/JPEGTran.rb
Constant Summary
Constants inherited from AbstractExternalProgram
AbstractExternalProgram::VERSION_SEPARATOR
Instance Attribute Summary
Attributes inherited from AbstractExternalProgram
Class Method Summary collapse
-
.capture_stderr ⇒ Object
since jpegtran by default writes jpeg files to stdout it’s a little obsessed about writing everything that isn’t a jpeg to stderr.
-
.compatible_versions ⇒ Object
the versioning scheme for jpegtran is a little weir and not all versions of jpegtran actually give a version number.
- .compress_losslessly(in_file, out_file) ⇒ Object
-
.option_version ⇒ Object
this rarely actually gives the option…
- .program_name ⇒ Object
-
.test_version_number(compatible, version_number) ⇒ Object
if the program exists…
Methods inherited from AbstractExternalProgram
#add_option, allowed_option_name?, #apply_value, #build_command_line, call_option, capture_output, compatible_version?, compatible_version_number?, create_tmp_directory, #ensure_option_validity, ensure_valid_option, excluded_option_names, execute, #execute, extract_program_version, #has_default?, #initialize, option, option?, option_default, #option_template, option_template, options, organize_options, output_handling, program_binary, program_found?, program_version, random_string, #requires_value?, #takes_value?, #valid_option?, verify_compatible_version, verify_program_exists, version_older?
Methods included from Logging
#debug, #error, #fatal, #info, #logger=, #warn
Constructor Details
This class inherits a constructor from SiteFuel::External::AbstractExternalProgram
Class Method Details
.capture_stderr ⇒ Object
since jpegtran by default writes jpeg files to stdout it’s a little obsessed about writing everything that isn’t a jpeg to stderr.
this is to circumvent that.
33 34 35 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 33 def self.capture_stderr true end |
.compatible_versions ⇒ Object
the versioning scheme for jpegtran is a little weir and not all versions of jpegtran actually give a version number. So the best we can do is check if the program exists and hope for the best.
24 25 26 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 24 def self.compatible_versions ['6'] end |
.compress_losslessly(in_file, out_file) ⇒ Object
57 58 59 60 61 62 63 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 57 def self.compress_losslessly(in_file, out_file) self.execute :copy, :optimize, :perfect, :output, out_file, :input, in_file end |
.option_version ⇒ Object
this rarely actually gives the option…
43 44 45 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 43 def self.option_version '--help' end |
.program_name ⇒ Object
17 18 19 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 17 def self.program_name 'jpegtran' end |
.test_version_number(compatible, version_number) ⇒ Object
if the program exists… hope for the best.
38 39 40 |
# File 'lib/sitefuel/external/JPEGTran.rb', line 38 def self.test_version_number(compatible, version_number) true end |