Class: Xberg::ImageOutputFormatHeif

Inherits:
Data
  • Object
show all
Extended by:
T::Sig
Includes:
ImageOutputFormat
Defined in:
lib/xberg/native.rb

Overview

Re-encode all extracted images as HEIF/HEIC at the given quality level.

quality must be in 1..=100. Values outside this range are clamped and a warning is emitted. 80 is a reasonable default.

The encode path requires the heic feature; on builds without it, selecting this variant returns an EncodeFailed warning and leaves the image untouched.

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#qualityObject (readonly)

rubocop:disable Lint/UselessMethodDefinition



206
207
208
# File 'lib/xberg/native.rb', line 206

def quality
  @quality
end

Class Method Details

.from_hash(hash) ⇒ Object



229
230
231
# File 'lib/xberg/native.rb', line 229

def self.from_hash(hash)
  new(quality: hash[:quality] || hash["quality"])
end

Instance Method Details

#heif?Boolean

Returns:

  • (Boolean)


223
# File 'lib/xberg/native.rb', line 223

def heif? = true

#jpeg?Boolean

Returns:

  • (Boolean)


219
# File 'lib/xberg/native.rb', line 219

def jpeg? = false

#native?Boolean

Returns:

  • (Boolean)


215
# File 'lib/xberg/native.rb', line 215

def native? = false

#png?Boolean

Returns:

  • (Boolean)


217
# File 'lib/xberg/native.rb', line 217

def png? = false

#svg?Boolean

Returns:

  • (Boolean)


225
226
227
# File 'lib/xberg/native.rb', line 225

def svg? = false
# @param hash [Hash] deserialized from the native extension
# @return [self]

#webp?Boolean

Returns:

  • (Boolean)


221
# File 'lib/xberg/native.rb', line 221

def webp? = false