Sha256: 05665f4dcd9a82e794a773c57f7a44e3556478e0f97657db70858a4dd8e90880

Contents?: true

Size: 699 Bytes

Versions: 9

Compression:

Stored size: 699 Bytes

Contents

#!/usr/bin/env ruby

# batch-process a lot of files
#
# this should run in constant memory -- if it doesn't, something has broken

require 'vips'

# benchmark thumbnail via a memory buffer
def via_memory(filename, thumbnail_width)
  data = IO.binread(filename)

  thumb = Vips::Image.thumbnail_buffer data, thumbnail_width, crop: 'centre'

  thumb.write_to_buffer '.jpg'
end

# benchmark thumbnail via files
def via_files(filename, thumbnail_width)
  thumb = Vips::Image.thumbnail filename, thumbnail_width, crop: 'centre'

  thumb.write_to_buffer '.jpg'
end

ARGV.each do |filename|
  puts "processing #{filename} ..."
  _thumb = via_memory(filename, 500)
  # _thumb = via_files(filename, 500)
end

Version data entries

9 entries across 9 versions & 2 rubygems

Version Path
vips-8.11.3 example/thumb.rb
vips-8.10.5 example/thumb.rb
vips-8.9.1 example/thumb.rb
ruby-vips-2.0.17 example/thumb.rb
vips-8.8.4 example/thumb.rb
vips-8.8.3 example/thumb.rb
ruby-vips-2.0.16 example/thumb.rb
vips-8.8.2 example/thumb.rb
ruby-vips-2.0.15 example/thumb.rb