1#!/usr/bin/env ruby 2require 'tk' 3require 'tkextlib/blt' 4 5file = File.join(File.dirname(File.expand_path(__FILE__)), 6 'images', 'qv100.t.gif') 7if File.exist?(file) 8 src = TkPhotoImage.new(:file=>file) 9else 10 fail RuntimeError, 'no image file' 11end 12 13width = src.width 14height = src.height 15 16TkOption.add('*Label.font', '*helvetica*10*') 17TkOption.add('*Label.background', 'white') 18 19[0, 90, 180, 270, 360, 45].each_with_index{|r, i| 20 dest = TkPhotoImage.new 21 Tk::BLT::Winop.image_rotate(src, dest, r) 22 l_txt = TkLabel.new(:text=>"#{r} degrees") 23 l_img = TkLabel.new(:image=>dest) 24 Tk::BLT::Table.add(Tk.root, [0,i], l_img, [1,i], l_txt) 25 Tk.update 26} 27 28Tk.mainloop 29