Start porting save methods over to args
parent
3e2418d82d
commit
a7962e3728
|
|
@ -1,3 +1,6 @@
|
||||||
|
require 'squib/args/save_batch'
|
||||||
|
require 'squib/args/card_range'
|
||||||
|
|
||||||
module Squib
|
module Squib
|
||||||
class Deck
|
class Deck
|
||||||
|
|
||||||
|
|
@ -11,7 +14,6 @@ module Squib
|
||||||
# @return self
|
# @return self
|
||||||
# @api public
|
# @api public
|
||||||
def save(opts = {})
|
def save(opts = {})
|
||||||
# opts = needs(opts, [:range, :creatable_dir, :formats, :prefix, :rotate])
|
|
||||||
save_png(opts) if Array(opts[:format]).include? :png
|
save_png(opts) if Array(opts[:format]).include? :png
|
||||||
save_pdf(opts) if Array(opts[:format]).include? :pdf
|
save_pdf(opts) if Array(opts[:format]).include? :pdf
|
||||||
self
|
self
|
||||||
|
|
@ -30,9 +32,11 @@ module Squib
|
||||||
# @return [nil] Returns nothing
|
# @return [nil] Returns nothing
|
||||||
# @api public
|
# @api public
|
||||||
def save_png(opts = {})
|
def save_png(opts = {})
|
||||||
|
range = Args::CardRange.new(opts[:range], deck_size: size)
|
||||||
|
batch = Args::SaveBatch.new.load!(opts, expand_by: size, layout: layout, dpi: dpi)
|
||||||
opts = needs(opts,[:range, :creatable_dir, :prefix, :count_format, :rotate])
|
opts = needs(opts,[:range, :creatable_dir, :prefix, :count_format, :rotate])
|
||||||
@progress_bar.start("Saving PNGs to #{opts[:dir]}/#{opts[:prefix]}*", @cards.size) do |bar|
|
@progress_bar.start("Saving PNGs to #{opts[:dir]}/#{opts[:prefix]}*", @cards.size) do |bar|
|
||||||
opts[:range].each do |i|
|
range.each do |i|
|
||||||
@cards[i].save_png(i, opts[:dir], opts[:prefix], opts[:count_format], opts[:rotate], opts[:angle])
|
@cards[i].save_png(i, opts[:dir], opts[:prefix], opts[:count_format], opts[:rotate], opts[:angle])
|
||||||
bar.increment
|
bar.increment
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -29,4 +29,4 @@ module Squib
|
||||||
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
require 'squib/args/arg_loader'
|
||||||
|
|
||||||
|
module Squib
|
||||||
|
# @api private
|
||||||
|
module Args
|
||||||
|
class SaveBatch
|
||||||
|
include ArgLoader
|
||||||
|
|
||||||
|
def initialize #TODO DSL method default for prefix
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.parameters
|
||||||
|
{ dir: '_output',
|
||||||
|
prefix: 'card_',
|
||||||
|
count_format: '%02d',
|
||||||
|
rotate: false,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.expanding_parameters
|
||||||
|
[] # none of them
|
||||||
|
end
|
||||||
|
|
||||||
|
def self.params_with_units
|
||||||
|
[] # none of them
|
||||||
|
end
|
||||||
|
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
Loading…
Reference in New Issue