diff options
author | jimmacfx <jimmacfx@4fa712ea-3c06-0410-9261-c11b4c06c003> | 2005-11-25 22:44:18 +0000 |
---|---|---|
committer | jimmacfx <jimmacfx@4fa712ea-3c06-0410-9261-c11b4c06c003> | 2005-11-25 22:44:18 +0000 |
commit | 6429a6080db982bcb37421d9735e25cfec25acec (patch) | |
tree | 4b825dc642cb6eb9a060e54bf8d69288fbee4904 /convert/contrib/imgconv.rb | |
parent | 763233dc3b53ed8e10abf9c050a26e870bd598e6 (diff) | |
download | original-6429a6080db982bcb37421d9735e25cfec25acec.tar.gz original-6429a6080db982bcb37421d9735e25cfec25acec.tar.bz2 |
git-svn-id: https://forgesvn1.novell.com/svn/original/trunk@7 4fa712ea-3c06-0410-9261-c11b4c06c003
Diffstat (limited to 'convert/contrib/imgconv.rb')
-rw-r--r-- | convert/contrib/imgconv.rb | 94 |
1 files changed, 0 insertions, 94 deletions
diff --git a/convert/contrib/imgconv.rb b/convert/contrib/imgconv.rb deleted file mode 100644 index 676ef42..0000000 --- a/convert/contrib/imgconv.rb +++ /dev/null @@ -1,94 +0,0 @@ -#!/usr/bin/ruby - -require 'fileutils' - -if ARGV.size < 2 - puts "Usage: #$0 source_images gallery_name" - exit 1 -end - -class Gallery - - CONF = {} - CONF[:thumbs] = { :target => 'thumbs', :geom => '120x120', :quality => '60' } - CONF[:lq] = { :target => 'lq', :geom => '640x480', :quality => '90' } - CONF[:mq] = { :target => 'mq', :geom => '800x600', :quality => '80' } - - def initialize(source_dir = '.', gallery = 'web-gallery') - @source_dir = source_dir - @gallery = gallery - end - - def setup_dirs - %w(thumbs lq mq hq zip comments).each do |dir| - target = File.join(@gallery, dir) - - if File.exists? target - warn "Skipping creation of, #{target}, already exists." - next - end - - FileUtils.mkdir_p target - end - end - - def setup_access - ht = File.join(@gallery, ".htaccess") - - open(ht, 'w') do |fp| - fp.puts "<Files info.txt>" - fp.puts " deny from all" - fp.puts "</Files>" - end - end - - def create_comment(num) - comment_file = File.join(@gallery, 'comments', "#{num}.txt") - - open(comment_file, 'w') do |fp| - fp.puts "<span>image #{num}</span>" - end - end - - def convert_image(conf, src, num) - target = File.join(@gallery, conf[:target], "img-#{num}.jpg") - - cmd = "convert -geometry #{conf[:geom]} -unsharp 1x5 " - cmd += "-quality #{conf[:quality]} #{src} #{target}" - - system cmd - end - - def build_zip_files - puts "Building zip files." - system("zip -R #@gallery/zip/mq.zip #@gallery/mq/*.jpg"); - system("zip -R #@gallery/zip/hq.zip #@gallery/hq/*.jpg"); - end - - def create - setup_dirs - setup_access - - num = 1 - - Dir["#@source_dir/*.jpg"].sort.each do |src| - puts "Working on: #{src}" - - FileUtils.cp(src, File.join(@gallery, 'hq', "img-#{num}.jpg")) - - convert_image(CONF[:thumbs], src, num) - convert_image(CONF[:lq], src, num) - convert_image(CONF[:mq], src, num) - - create_comment(num) - - num += 1 - end - - build_zip_files - end -end - -gal = Gallery.new ARGV[0], ARGV[1] -gal.create - |