faktura 0.1.8 → 0.1.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 02ffa734e93700cfe2f8947131f34f4f9c8466c0
4
- data.tar.gz: 1205a42c91adf6914988aac8f2b216d2408e34bb
3
+ metadata.gz: 20c5c55888c4cd7471c97e30b02ac834e9d93240
4
+ data.tar.gz: 8751cc5064cfff052808488b526abf61f5878aa2
5
5
  SHA512:
6
- metadata.gz: 6cbcc4d6a4b581a8ff44ad53887ddda2660df6230de2c40a04dbebd4ed40bd3a508909a86425f6da2eec6c7dccd2b368de917757bbae499233e2dff9db92a48a
7
- data.tar.gz: e6ef08c11e086564ad8ca51d12eb69cb5765d4383373cc13432795c36ea032e771d2cffed9648616e36e730e915fb085587b7e5b2f6fb637127e47320f00e74e
6
+ metadata.gz: 5d89233adc6cf77bdde31711db002632f01f6ed9786396b2efc19fd76647742bdd26b591ea27f075ea760691e66f225c1fa2b321d3e2f2d8dbb16f278c49b467
7
+ data.tar.gz: e53298de7278c1bbe8859f2f1fe006fc9bcf6b87c2110349ea6bb2d6ef975291cce3dbc5c538080d0aeab4051f1eae3de027d20cbb7d450d94ac6093cae5cdd8
data/lib/faktura/pdf.rb CHANGED
@@ -6,6 +6,7 @@ class Faktura::PDF
6
6
  attr_reader :amount
7
7
  attr_reader :provider
8
8
  attr_reader :currency
9
+ attr_reader :overlay
9
10
 
10
11
  def initialize(filename)
11
12
  @filename = filename
@@ -13,6 +14,7 @@ class Faktura::PDF
13
14
  @date = nil
14
15
  @provider = nil
15
16
  @currency = nil
17
+ @overlay = false
16
18
 
17
19
  analyze
18
20
  end
@@ -28,6 +30,7 @@ class Faktura::PDF
28
30
  if content =~ opt[:name]
29
31
  @provider = prv
30
32
  @currency = opt[:currency]
33
+ @overlay = opt[:overlay] || false
31
34
 
32
35
  if opt.has_key? :date and date_m = content.match(opt[:date])
33
36
  @date = date_m[1]
@@ -94,7 +97,8 @@ class Faktura::PDF
94
97
  name: /Heroku/,
95
98
  date: /^(\d{2}\/\d{2}\/\d{4})/,
96
99
  amount: /Total: [$]([\d.]+)/,
97
- currency: 'USD'
100
+ currency: 'USD',
101
+ overlay: true
98
102
  }
99
103
  }
100
104
 
data/lib/faktura/stamp.rb CHANGED
@@ -4,23 +4,33 @@ require 'hexapdf'
4
4
  class Faktura::Stamp
5
5
  TIMES_NEW_ROMAN = '/usr/share/fonts/truetype/msttcorefonts/Times_New_Roman.ttf'
6
6
 
7
+ START_Y = 300
8
+ RED = [200, 0, 0]
9
+ INDENT=50
10
+ RIGHT_END=400
11
+ SKIP_LINE=18
12
+
7
13
  def initialize(pdf)
8
14
  @filename = pdf
15
+ @overlay = false
9
16
  if pdf.class == Faktura::PDF
10
17
  @filename = pdf.filename
18
+ @overlay = pdf.overlay
11
19
  end
12
- @start_y = 400
20
+ @start_y = START_Y
13
21
  @cursor_y = @start_y
14
22
  end
15
23
 
16
- RED = [200, 0, 0]
17
- INDENT=50
18
- RIGHT_END=400
19
- SKIP_LINE=18
20
-
21
24
  def stamp(name, description, output_file=nil)
22
25
  pdf = HexaPDF::Document.open(@filename)
23
- @canvas = pdf.pages.add.canvas
26
+
27
+ puts "pages #{pdf.pages.length}"
28
+
29
+ if pdf.pages.length > 1 and @overlay
30
+ @canvas = pdf.pages[1].canvas(type: :overlay)
31
+ else
32
+ @canvas = pdf.pages.add.canvas
33
+ end
24
34
 
25
35
  style = HexaPDF::Layout::Style.new
26
36
  style.font = pdf.fonts.add(TIMES_NEW_ROMAN)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: faktura
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcin Koziej