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 +4 -4
- data/CHANGELOG +3 -2
- data/lib/rfpdf/version.rb +1 -1
- data/lib/tcpdf.rb +15 -12
- data/test/tcpdf_htmlcell_test.rb +64 -0
- data/test/tcpdf_image_test.rb +18 -0
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 63d0b7d1a6a69589d3929d473835804e9c373bcb
|
4
|
+
data.tar.gz: de62737227cba9fecdd59544b451ad61001c9b2c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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
|
18
|
-
1.17.2 2014-
|
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
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 =
|
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
|
-
|
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
|
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
|
data/test/tcpdf_image_test.rb
CHANGED
@@ -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.
|
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-
|
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
|