Sha256: 8bfa0f1bdb4ec019d6fb7698463e88e8937ffd86405b3547dfb049af943e0963

Contents?: true

Size: 970 Bytes

Versions: 8

Compression:

Stored size: 970 Bytes

Contents

require 'squib'

Squib::Deck.new(cards: 2) do
  background color: :white

  # Outputs a hash of arrays with the header names as keys
  data = csv file: 'sample.csv'
  text str: data['Type'], x: 250, y: 55, font: 'Arial 54'
  text str: data['Level'], x: 65, y: 65, font: 'Arial 72'

  save format: :png, prefix: 'sample_csv_'

  # You can also specify the sheet, starting at 0
  data = xlsx file: 'sample.xlsx', sheet: 2
end

# CSV is also a Squib-module-level function, so this also works:
data      = Squib.csv file: 'quantity_explosion.csv' # 2 rows...
num_cards = data['Name'].size                        #          ...but 4 cards!

Squib::Deck.new(cards: num_cards) do
  background color: :white
  rect # card border
  text str: data['Name'], font: 'Arial 54'
  save_sheet prefix: 'sample_csv_qty_', columns: 4
end

# Additionally, CSV supports inline data specifically
data = Squib.csv data: <<-EOCSV
Name,Cost
Knight,3
Orc,1
EOCSV

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
squib-0.13.4 samples/data/_csv.rb
squib-0.13.3 samples/data/_csv.rb
squib-0.13.2 samples/data/_csv.rb
squib-0.13.1 samples/data/_csv.rb
squib-0.13.0 samples/data/_csv.rb
squib-0.12.0 samples/data/_csv.rb
squib-0.11.0 samples/data/_csv.rb
squib-0.10.0 samples/data/_csv.rb