class FilePipeline::FileOperations::PtiffConversion

Saves a file to a tiled multi-resolution TIFF ('pyramid'), as required by e.g. the IIP image server.

See iipimage.sourceforge.io/documentation/images/ or www.loc.gov/preservation/digital/formats/fdd/fdd000237.shtml for more information on the format.

Public Class Methods

new(options) click to toggle source

Returns a new instance.

Options
  • :tile - Writes a tiled TIFF (default true)

  • :tile_width: Tile width in pixels (default 256)

  • :tile_height: Tile height in pixels (default 256)

Calls superclass method
# File lib/file_pipeline/file_operations/default_operations/ptiff_conversion.rb, line 21
def initialize(**opts)
  defaults = {
    tile: true,
    tile_width: 256,
    tile_height: 256
  }
  super(opts, defaults)
  @options[:pyramid] = true
end

Public Instance Methods

operation(src_file, out_file) click to toggle source

Writes a pyramid tiff version of src_file to out_file.

# File lib/file_pipeline/file_operations/default_operations/ptiff_conversion.rb, line 34
def operation(*args)
  src_file, out_file = args
  image = Vips::Image.new_from_file src_file
  image.tiffsave(out_file, **options)
  # Return lof if any
end
target_extension() click to toggle source

Returns '.tiff' (all files created by operation will be TIFF files).

# File lib/file_pipeline/file_operations/default_operations/ptiff_conversion.rb, line 43
def target_extension
  '.tiff'
end