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