This repository has been archived on 2021-09-15. You can view files and clone it, but cannot push or open issues or pull requests.
DUT2Curling/lib/ruby-gtk2-2.0.2/gdk_pixbuf2/sample/scale.rb

46 lines
1017 B
Ruby

#!/usr/bin/env ruby
=begin
scale.rb - Ruby/GdkPixbuf sample script.
Copyright (c) 2002-2006 Ruby-GNOME2 Project Team
This program is licenced under the same licence as Ruby-GNOME2.
$Id: scale.rb,v 1.10 2006/06/17 14:38:08 mutoh Exp $
=end
require 'gtk2'
filename = ARGV[0]
unless filename
puts "ruby #{$0} filename"
exit(1)
end
vbox = Gtk::VBox.new
src = Gdk::Pixbuf.new(filename)
vbox.add(Gtk::Image.new(src))
dst = src.scale(200, 200, Gdk::Pixbuf::INTERP_NEAREST)
dst.scale!(src, 60, 60, 90, 90, -50, 50, 6, 3)
vbox.add(Gtk::Image.new(dst))
dst2 = Gdk::Pixbuf.new(Gdk::Pixbuf::COLORSPACE_RGB, true, 8, 200, 200)
dst2.scale!(src, 0, 0, 100, 100, 0, 0, 1.5, 1.5)
vbox.add(Gtk::Image.new(dst2))
dst3 = Gdk::Pixbuf.new(Gdk::Pixbuf::COLORSPACE_RGB, true, 8, 200, 200)
dst3.scale!(src, 0, 0, 200, 200, 0, 0, 5, 3, Gdk::Pixbuf::INTERP_HYPER)
vbox.add(Gtk::Image.new(dst3))
window = Gtk::Window.new
window.signal_connect('delete-event') do
Gtk.main_quit
end
window.add(vbox).show_all
Gtk.main