rfpdf 1.17.2 → 1.17.3

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: 1977fa6dbcfe119efa5a039e7e109cb6544cfb99
4
- data.tar.gz: b51ccf3d16c303592b596f151fb75f5a945dda65
3
+ metadata.gz: 63d0b7d1a6a69589d3929d473835804e9c373bcb
4
+ data.tar.gz: de62737227cba9fecdd59544b451ad61001c9b2c
5
5
  SHA512:
6
- metadata.gz: ec76cd70718ea7e36b61686178df99ceeb929e9755f1bb141a11d6f8b7fd62b29dc743701592a2fb24ee4916bf1475cad39bc44403308212f0cb06068b7703eb
7
- data.tar.gz: 89acfe639c5138a1c7a289dd12333f5117095222e3bb048a8bd161b579c0fb7196075b5684e1245ae4851f2814b77c574bde6cfc94712614428366b35d835b8c
6
+ metadata.gz: ff4b63ed0ac855ac2d8c712222f4bb954086e398a0940156e6e678717fb408b4704d0e82a9f9de59249bd288e19ed34bf5b349895ea87de2d9a1333e1a6b8446
7
+ data.tar.gz: 2bf37c098e1240e968f83244fdcada9c04b054b8da175f7f2b2ece1a8ae3a9269f1411c339e04bdda6f491e66342cf1b3bd5f0272654f50cbd501292b1a1d0ff
data/CHANGELOG CHANGED
@@ -14,6 +14,7 @@ put your assignment in a before_filter (perhaps overriding :filename, etc in you
14
14
  1.15 2009-11-20 Rails 2.* support - Thanks to Prawnto plugin for showing the way to the new TemplateHandler
15
15
  1.16 2012-09-08 Rails 3.* and Ruby 1.9.* support, and fix FPDF severral bug.
16
16
  Jun NAITOH took over development of RFPDF from Edwin Moss.
17
- 1.17 2014-05-18 Update base version to TCPDF 5.1.002. Ruby 2.0/2.1 support. FPDF is deprecated.
18
- 1.17.2 2014-06-30 FreeSerif font added from GNU FreeFont(20080912).
17
+ 1.17 2014-05-18 Update base version to TCPDF 5.1.002. Ruby 2.0/2.1 support. FPDF is deprecated.
18
+ 1.17.2 2014-07-09 FreeSerif font added from GNU FreeFont(20080912).
19
+ 1.17.3 2014-07-16 Several bug fixed.
19
20
 
data/lib/rfpdf/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rfpdf
2
- VERSION = "1.17.2"
2
+ VERSION = "1.17.3"
3
3
  end
data/lib/tcpdf.rb CHANGED
@@ -3182,6 +3182,7 @@ class TCPDF
3182
3182
  end
3183
3183
  end
3184
3184
  end
3185
+ @newline = true
3185
3186
  return true
3186
3187
  end
3187
3188
  if current_page != @page
@@ -3836,7 +3837,7 @@ class TCPDF
3836
3837
  # get latest page number
3837
3838
  end_page = @page
3838
3839
  if resth > 0
3839
- skip = endpage - startpage
3840
+ skip = end_page - startpage
3840
3841
  tmpresth = resth
3841
3842
  while tmpresth > 0
3842
3843
  if skip <= 0
@@ -3847,7 +3848,7 @@ class TCPDF
3847
3848
  skip -= 1
3848
3849
  end
3849
3850
  currentY = @y
3850
- endpage = @page
3851
+ end_page = @page
3851
3852
  end
3852
3853
 
3853
3854
  # check if a new page has been created
@@ -4575,6 +4576,7 @@ class TCPDF
4575
4576
 
4576
4577
  # set bottomcoordinates
4577
4578
  @img_rb_y = y + h
4579
+ Error('Image filename is empty.') if file.nil? or file.length == 0
4578
4580
 
4579
4581
  # get image dimensions
4580
4582
  imsize = getimagesize(file)
@@ -11611,10 +11613,10 @@ public
11611
11613
  minstartliney = startliney
11612
11614
  maxbottomliney = startliney + @font_size * @cell_height_ratio
11613
11615
  end
11614
- startlinepage = @page
11615
- if !endlinepos.nil? and !pbrk
11616
+ if startlinepage == @page and !endlinepos.nil? and !pbrk # fix startlinepos at page break case.
11616
11617
  startlinepos = endlinepos
11617
11618
  else
11619
+ startlinepage = @page
11618
11620
  if !@in_footer
11619
11621
  if !@footerlen[@page].nil?
11620
11622
  @footerpos[@page] = @pagelen[@page] - @footerlen[@page]
@@ -12279,20 +12281,21 @@ public
12279
12281
  # else
12280
12282
  result_img = Image(tag['attribute']['src'], xpos, @y, iw, ih, '', imglink, align, false, 300, '', false, false, border, false, false, true)
12281
12283
  # end
12284
+ case align
12285
+ when 'T'
12286
+ @y = prevy
12287
+ when 'M'
12288
+ @y = (@img_rb_y + prevy - (tag['fontsize'] / @k)) / 2
12289
+ when 'B'
12290
+ @y = @img_rb_y - (tag['fontsize'] / @k)
12291
+ end
12282
12292
  rescue => err
12283
12293
  logger.error "pdf: Image: error: #{err.message}"
12284
12294
  result_img = false
12285
- end
12286
- case align
12287
- when 'T'
12288
12295
  @y = prevy
12289
- when 'M'
12290
- @y = (@img_rb_y + prevy - (tag['fontsize'] / @k)) / 2
12291
- when 'B'
12292
- @y = @img_rb_y - (tag['fontsize'] / @k)
12293
12296
  end
12294
12297
  if result_img == false
12295
- Write(@lasth, File::basename(img_name), '', false, '', false, 0, false)
12298
+ Write(@lasth, File::basename(img_name) + ' ', '', false, '', false, 0, false) unless img_name.nil?
12296
12299
  end
12297
12300
  end
12298
12301
  when 'dl'
@@ -0,0 +1,64 @@
1
+ require 'test_helper'
2
+
3
+ class TcpdfTest < ActiveSupport::TestCase
4
+ test "write_html_cell Basic test" do
5
+ pdf = TCPDF.new
6
+ pdf.add_page()
7
+
8
+ htmlcontent = '<p>foo</p>'
9
+ pdf.write_html_cell(0, 5, 10, '', htmlcontent, 0, 1)
10
+
11
+ pno = pdf.get_page
12
+ assert_equal pno, 1
13
+
14
+ y = pdf.get_y
15
+ assert_in_delta 17.3, y, 0.1
16
+
17
+ no = pdf.get_num_pages
18
+ assert_equal no, 1
19
+ end
20
+
21
+ test "write_html_cell Page Break test 1" do
22
+ pdf = TCPDF.new
23
+ pdf.add_page()
24
+
25
+ pdf.set_top_margin(30)
26
+
27
+ h = pdf.get_page_height
28
+ pdf.set_y(h - 15)
29
+
30
+ htmlcontent = '<p>foo</p>'
31
+ pdf.write_html_cell(0, 5, 10, '', htmlcontent, 0, 1)
32
+
33
+ pno = pdf.get_page
34
+ assert_equal pno, 2
35
+
36
+ y = pdf.get_y
37
+ assert_in_delta 40.0, y, 0.1
38
+
39
+ no = pdf.get_num_pages
40
+ assert_equal no, 2
41
+ end
42
+
43
+ test "write_html_cell Page Break test 2" do
44
+ pdf = TCPDF.new
45
+ pdf.add_page()
46
+
47
+ pdf.set_top_margin(30)
48
+
49
+ h = pdf.get_page_height
50
+ pdf.set_y(h - 15)
51
+
52
+ htmlcontent = '<p>foo</p>'
53
+ pdf.write_html_cell(0, 5, 10, '', htmlcontent, "LRBT", 1)
54
+
55
+ pno = pdf.get_page
56
+ assert_equal pno, 2
57
+
58
+ y = pdf.get_y
59
+ assert_in_delta 40.0, y, 0.1
60
+
61
+ no = pdf.get_num_pages
62
+ assert_equal no, 2
63
+ end
64
+ end
@@ -51,4 +51,22 @@ class TcpdfTest < ActiveSupport::TestCase
51
51
  type = pdf.get_image_file_type(nil, [])
52
52
  assert_equal type, ''
53
53
  end
54
+
55
+ test "Image basic filename test" do
56
+ pdf = TCPDF.new
57
+ err = assert_raises(RuntimeError) {
58
+ pdf.image(nil)
59
+ }
60
+ assert_equal( err.message, 'TCPDF error: Image filename is empty.')
61
+
62
+ err = assert_raises(RuntimeError) {
63
+ pdf.image('')
64
+ }
65
+ assert_equal( err.message, 'TCPDF error: Image filename is empty.')
66
+
67
+ err = assert_raises(RuntimeError) {
68
+ pdf.image('foo.png')
69
+ }
70
+ assert_equal( err.message, 'TCPDF error: Missing image file: foo.png')
71
+ end
54
72
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rfpdf
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.17.2
4
+ version: 1.17.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - NAITOH Jun
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-09 00:00:00.000000000 Z
11
+ date: 2014-07-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -155,6 +155,7 @@ files:
155
155
  - test/tcpdf_format_test.rb
156
156
  - test/tcpdf_func_test.rb
157
157
  - test/tcpdf_html_test.rb
158
+ - test/tcpdf_htmlcell_test.rb
158
159
  - test/tcpdf_image_test.rb
159
160
  - test/tcpdf_test.rb
160
161
  - test/tcpdf_transaction_test.rb
@@ -206,6 +207,7 @@ test_files:
206
207
  - test/tcpdf_format_test.rb
207
208
  - test/tcpdf_func_test.rb
208
209
  - test/tcpdf_html_test.rb
210
+ - test/tcpdf_htmlcell_test.rb
209
211
  - test/tcpdf_image_test.rb
210
212
  - test/tcpdf_test.rb
211
213
  - test/tcpdf_transaction_test.rb