faktura 0.1.8 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
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