lib/middleware/reformat.rb in tracksperanto-1.5.0 vs lib/middleware/reformat.rb in tracksperanto-1.5.1

- old
+ new

@@ -1,23 +1,26 @@ require File.dirname(__FILE__) + '/scaler' # This middleware reformats (scales) the track setup to a specific pixel resolution. Very useful for # applying proxy tracks to full-res images -class Tracksperanto::Middleware::Reformat < Tracksperanto::Middleware::Scaler +class Tracksperanto::Middleware::Reformat < Tracksperanto::Middleware::Base # To which format we have to scale attr_accessor :width, :height cast_to_int :width, :height - private :x_factor=, :y_factor= - # Called on export start def start_export( img_width, img_height) - @width ||= img_width + @width ||= img_width # If they be nil @height ||= img_height - self.x_factor, self.y_factor = (@width / img_width.to_f), (@height / img_height.to_f) - set_residual_factor - # Do not call super since it scales by itself :-) - @exporter.start_export(@width, @height) + x_factor, y_factor = (@width / img_width.to_f), (@height / img_height.to_f) + + @stash = @exporter + @exporter = Tracksperanto::Middleware::Scaler.new(@exporter, :x_factor => x_factor, :y_factor => y_factor) + super + end + + def end_export + @exporter = @stash end end \ No newline at end of file