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