rbpdf 1.20.0 → 1.21.0
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 +5 -5
- data/CHANGELOG +18 -0
- data/README.md +11 -1
- data/lib/rbpdf/version.rb +2 -2
- data/lib/rbpdf.rb +69 -46
- data/lib/unicode_data.rb +29 -0
- data/rbpdf.gemspec +8 -20
- metadata +28 -101
- data/test/err_font1.rb +0 -7
- data/test/err_font2.rb +0 -8
- data/test/input.jpg +0 -0
- data/test/json: +0 -0
- data/test/logo_rbpdf_8bit .png +0 -0
- data/test/logo_rbpdf_8bit+ .png +0 -0
- data/test/logo_rbpdf_8bit.gif +0 -0
- data/test/logo_rbpdf_8bit.jpg +0 -0
- data/test/logo_rbpdf_8bit.png +0 -0
- data/test/logo_rbpdf_8bit_alpha.gif +0 -0
- data/test/logo_rbpdf_mono_gray.jpg +0 -0
- data/test/logo_rbpdf_mono_gray.png +0 -0
- data/test/logo_rbpdf_mono_rgb.jpg +0 -0
- data/test/logo_rbpdf_mono_rgb.png +0 -0
- data/test/output.png +0 -0
- data/test/png_test_alpha.png +0 -0
- data/test/png_test_msk_alpha.png +0 -0
- data/test/png_test_non_alpha.png +0 -0
- data/test/rbpdf_bidi_test.rb +0 -453
- data/test/rbpdf_bookmark_test.rb +0 -66
- data/test/rbpdf_cell_test.rb +0 -231
- data/test/rbpdf_content_test.rb +0 -213
- data/test/rbpdf_css_test.rb +0 -640
- data/test/rbpdf_dom_test.rb +0 -272
- data/test/rbpdf_examples_test.rb +0 -83
- data/test/rbpdf_font_func_test.rb +0 -45
- data/test/rbpdf_font_style_test.rb +0 -37
- data/test/rbpdf_font_test.rb +0 -308
- data/test/rbpdf_format_test.rb +0 -30
- data/test/rbpdf_func_test.rb +0 -139
- data/test/rbpdf_html_anchor_test.rb +0 -105
- data/test/rbpdf_html_func_test.rb +0 -170
- data/test/rbpdf_html_test.rb +0 -658
- data/test/rbpdf_htmlcell_test.rb +0 -60
- data/test/rbpdf_http_test.rb +0 -76
- data/test/rbpdf_image_rmagick_test.rb +0 -170
- data/test/rbpdf_image_test.rb +0 -174
- data/test/rbpdf_test.rb +0 -375
- data/test/rbpdf_transaction_test.rb +0 -203
- data/test/rbpdf_viewerpreferences_test.rb +0 -41
- data/test/rbpdf_write_test.rb +0 -229
- data/test/test.rb +0 -22
- data/test/test_helper.rb +0 -9
@@ -1,170 +0,0 @@
|
|
1
|
-
# Copyright (c) 2011-2017 NAITOH Jun
|
2
|
-
# Released under the MIT license
|
3
|
-
# http://www.opensource.org/licenses/MIT
|
4
|
-
|
5
|
-
require 'test_helper'
|
6
|
-
|
7
|
-
class RbpdfTest < Test::Unit::TestCase
|
8
|
-
class MYPDF < RBPDF
|
9
|
-
def addHTMLVertSpace(hbz, hb, cell, firstorlast)
|
10
|
-
super
|
11
|
-
end
|
12
|
-
def sanitize_html(html)
|
13
|
-
super
|
14
|
-
end
|
15
|
-
end
|
16
|
-
|
17
|
-
test "html func addHTMLVertSpace empty lines test" do
|
18
|
-
pdf = MYPDF.new
|
19
|
-
pdf.add_page()
|
20
|
-
|
21
|
-
# same line, start position
|
22
|
-
x1 = pdf.get_x
|
23
|
-
pdf.set_x(x1 + 10)
|
24
|
-
y1 = pdf.get_y
|
25
|
-
pdf.addHTMLVertSpace(1, 0, false, true)
|
26
|
-
x2 = pdf.get_x
|
27
|
-
y2 = pdf.get_y
|
28
|
-
assert_equal x1, x2
|
29
|
-
assert_equal y1, y2
|
30
|
-
|
31
|
-
# same line, @c_margin position
|
32
|
-
margins = pdf.get_margins
|
33
|
-
|
34
|
-
x1 = pdf.get_x
|
35
|
-
y1 = pdf.get_y
|
36
|
-
pdf.addHTMLVertSpace(1, 0, true, true)
|
37
|
-
x2 = pdf.get_x
|
38
|
-
y2 = pdf.get_y
|
39
|
-
assert_equal x1 + margins['cell'], x2
|
40
|
-
assert_equal y1, y2
|
41
|
-
end
|
42
|
-
|
43
|
-
test "html func addHTMLVertSpace add line test" do
|
44
|
-
pdf = MYPDF.new
|
45
|
-
pdf.add_page()
|
46
|
-
|
47
|
-
# next line, start position
|
48
|
-
x1 = pdf.get_x
|
49
|
-
pdf.set_x(x1 + 10)
|
50
|
-
y1 = pdf.get_y
|
51
|
-
pdf.addHTMLVertSpace(5, 0, false, false)
|
52
|
-
x2 = pdf.get_x
|
53
|
-
y2 = pdf.get_y
|
54
|
-
assert_equal x1, x2
|
55
|
-
assert_equal y1 + 5, y2
|
56
|
-
|
57
|
-
# next line, @c_margin position
|
58
|
-
margins = pdf.get_margins
|
59
|
-
|
60
|
-
x1 = pdf.get_x
|
61
|
-
y1 = pdf.get_y
|
62
|
-
pdf.addHTMLVertSpace(5, 0, true, false)
|
63
|
-
x2 = pdf.get_x
|
64
|
-
y2 = pdf.get_y
|
65
|
-
assert_equal x1 + margins['cell'], x2
|
66
|
-
assert_equal y1 + 5, y2
|
67
|
-
end
|
68
|
-
|
69
|
-
test "html func addHTMLVertSpace height of the break test 1" do
|
70
|
-
pdf = MYPDF.new
|
71
|
-
pdf.add_page()
|
72
|
-
|
73
|
-
margins = pdf.get_margins
|
74
|
-
x1 = pdf.get_x
|
75
|
-
y1 = pdf.get_y
|
76
|
-
pdf.addHTMLVertSpace(0, 5, true, false) # height of the break : 5
|
77
|
-
x2 = pdf.get_x
|
78
|
-
y2 = pdf.get_y
|
79
|
-
assert_equal x1 + margins['cell'], x2
|
80
|
-
assert_equal y1 + 5, y2
|
81
|
-
|
82
|
-
pdf.addHTMLVertSpace(0, 5, true, false) # height of the break : 5
|
83
|
-
x3 = pdf.get_x
|
84
|
-
y3 = pdf.get_y
|
85
|
-
assert_equal x2, x3
|
86
|
-
assert_equal y2, y3
|
87
|
-
|
88
|
-
pdf.addHTMLVertSpace(0, 5 + 2, true, false) # height of the break : 7
|
89
|
-
x4 = pdf.get_x
|
90
|
-
y4 = pdf.get_y
|
91
|
-
assert_equal x3, x4
|
92
|
-
assert_equal y3 + 2, y4
|
93
|
-
|
94
|
-
pdf.addHTMLVertSpace(0, 5, true, false) # height of the break : 7
|
95
|
-
x5 = pdf.get_x
|
96
|
-
y5 = pdf.get_y
|
97
|
-
assert_equal x4, x5
|
98
|
-
assert_equal y4, y5
|
99
|
-
|
100
|
-
pdf.addHTMLVertSpace(0, 5 + 2 + 1, true, false) # height of the break : 8
|
101
|
-
x6 = pdf.get_x
|
102
|
-
y6 = pdf.get_y
|
103
|
-
assert_equal x5, x6
|
104
|
-
assert_equal y5 + 1, y6
|
105
|
-
|
106
|
-
pdf.addHTMLVertSpace(0, 10, true, true) # height of the break : 0 (reset)
|
107
|
-
x7 = pdf.get_x
|
108
|
-
y7 = pdf.get_y
|
109
|
-
assert_equal x6, x7
|
110
|
-
assert_equal y6, y7
|
111
|
-
|
112
|
-
pdf.addHTMLVertSpace(0, 2, true, false) # height of the break : 2
|
113
|
-
x8 = pdf.get_x
|
114
|
-
y8 = pdf.get_y
|
115
|
-
assert_equal x7, x8
|
116
|
-
assert_equal y7 + 2, y8
|
117
|
-
end
|
118
|
-
|
119
|
-
test "html func addHTMLVertSpace height of the break test 2" do
|
120
|
-
pdf = MYPDF.new
|
121
|
-
pdf.add_page()
|
122
|
-
|
123
|
-
x1 = pdf.get_x
|
124
|
-
y1 = pdf.get_y
|
125
|
-
pdf.addHTMLVertSpace(10, 5, false, false) # height of the break : 5
|
126
|
-
x2 = pdf.get_x
|
127
|
-
y2 = pdf.get_y
|
128
|
-
assert_equal x1, x2
|
129
|
-
assert_equal y1 + 10 + 5, y2
|
130
|
-
|
131
|
-
pdf.addHTMLVertSpace(10, 5, false, false) # height of the break : 5
|
132
|
-
x3 = pdf.get_x
|
133
|
-
y3 = pdf.get_y
|
134
|
-
assert_equal x2, x3
|
135
|
-
assert_equal y2 + 10, y3
|
136
|
-
|
137
|
-
pdf.addHTMLVertSpace(10, 5 + 2, false, false) # height of the break : 7
|
138
|
-
x4 = pdf.get_x
|
139
|
-
y4 = pdf.get_y
|
140
|
-
assert_equal x3, x4
|
141
|
-
assert_equal y3 + 10 + 2, y4
|
142
|
-
end
|
143
|
-
|
144
|
-
test "html func sanitize test 1" do
|
145
|
-
pdf = MYPDF.new
|
146
|
-
pdf.add_page()
|
147
|
-
html = '<table border="1"><thead><tr><td>ABCD</td><td>EFGH</td><td>IJKL</td></tr></thead><tr><td>abcd</td><td>efgh</td><td>ijkl</td></tr><tr><td>' + 'ABC' + '</td></tr></table>'
|
148
|
-
html = pdf.sanitize_html(html).gsub(/[\r\n]/,'')
|
149
|
-
|
150
|
-
assert_equal %{<table border="1"><thead><tr><td>ABCD</td><td>EFGH</td><td>IJKL</td></tr></thead><tr><td>abcd</td><td>efgh</td><td>ijkl</td></tr><tr><td>ABC</td></tr></table>}, html
|
151
|
-
end
|
152
|
-
|
153
|
-
test "html func sanitize test 2" do
|
154
|
-
pdf = MYPDF.new
|
155
|
-
pdf.add_page()
|
156
|
-
|
157
|
-
htmlcontent = '1<br><br><br><br><br><br><br><br><br><br> 2<br><br><br><br><br><br><br><br><br><br> 3<br><br><br><br><br><br><br><br><br><br> 4<br><br><br><br><br><br><br><br><br><br> 5<br><br><br><br><br><br><br><br><br><br> 6<br><br><br><br><br><br><br><br><br><br> 7<br><br><br><br><br><br><br><br><br><br> 8<br><br><br><br><br><br><br><br><br><br> 9<br><br><br><br><br><br><br><br><br><br> 10<br><br><br><br><br><br><br><br><br><br> 11<br><br><br><br><br><br><br><br><br><br>'
|
158
|
-
html = '<table cellpadding="1"><thead><tr><td>ABCD</td><td>EFGH</td><td>IJKL</td></tr></thead><tr><td>abcd</td><td>efgh</td><td>ijkl</td></tr><tr><td>' + htmlcontent + '</td></tr></table>'
|
159
|
-
html = pdf.sanitize_html(html).gsub(/[\r\n]/,'')
|
160
|
-
assert_equal %{<table cellpadding="1"><thead><tr><td>ABCD</td><td>EFGH</td><td>IJKL</td></tr></thead><tr><td>abcd</td><td>efgh</td><td>ijkl</td></tr><tr><td>1<br><br><br><br><br><br><br><br><br><br> 2<br><br><br><br><br><br><br><br><br><br> 3<br><br><br><br><br><br><br><br><br><br> 4<br><br><br><br><br><br><br><br><br><br> 5<br><br><br><br><br><br><br><br><br><br> 6<br><br><br><br><br><br><br><br><br><br> 7<br><br><br><br><br><br><br><br><br><br> 8<br><br><br><br><br><br><br><br><br><br> 9<br><br><br><br><br><br><br><br><br><br> 10<br><br><br><br><br><br><br><br><br><br> 11<br><br><br><br><br><br><br><br><br><br></td></tr></table>}, html
|
161
|
-
end
|
162
|
-
|
163
|
-
test "html func sanitize open angled bracket '<' test" do
|
164
|
-
pdf = MYPDF.new
|
165
|
-
pdf.add_page()
|
166
|
-
html = "<p>AAA '<'-BBB << <<< '</' '<//' '<///' <</ <<// CCC.</p>"
|
167
|
-
html = pdf.sanitize_html(html).gsub(/[\r\n]/,'')
|
168
|
-
assert_equal %{<p>AAA '<'-BBB << <<< '</' '<//' '<///' <</ <<// CCC.</p>}, html
|
169
|
-
end
|
170
|
-
end
|