rqrcode-with-patches 0.5.3 → 0.5.4
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 +7 -0
- data/CHANGELOG +4 -0
- data/README.md +7 -1
- data/lib/rqrcode.rb +1 -0
- data/lib/rqrcode/export/html.rb +53 -0
- data/lib/rqrcode/version.rb +1 -1
- data/test/test_rqrcode_export.rb +7 -3
- metadata +16 -27
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 9965f2b7c2cbdd55f9ec9d1dda4c3f43a97e8d21
|
4
|
+
data.tar.gz: 903a0b3a982b79fee602913cd43da9b9f58ecf86
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 551a2a6cf4b680b1dbde3a38d8c4d0cf464f3be6824df37bcb71e705e956edca7e58e9a267e865a7734f63db560c923e10111899f9ca22fe4533cc9d7cf4ca98
|
7
|
+
data.tar.gz: fd96f3f7bad553f7ebca7f8cbc22e072607dca9304932a66cd8ad0990a0a7d3024e8c1bebb5d3721d7a14b3731b33a7bee1e8e4e626027e1615693fa8b23b0ac
|
data/CHANGELOG
CHANGED
data/README.md
CHANGED
@@ -84,6 +84,12 @@ td.black { background-color: #000; }
|
|
84
84
|
td.white { background-color: #fff; }
|
85
85
|
</style>
|
86
86
|
|
87
|
+
<%= raw @qr.as_html %>
|
88
|
+
```
|
89
|
+
|
90
|
+
If you want to generate the HTML manually for customization, you can start with the following:
|
91
|
+
|
92
|
+
```erb
|
87
93
|
<table>
|
88
94
|
<% @qr.modules.each_index do |x| %>
|
89
95
|
<tr>
|
@@ -152,4 +158,4 @@ Special thanks to the following people for submitting patches:
|
|
152
158
|
|
153
159
|
## Copyright
|
154
160
|
|
155
|
-
MIT
|
161
|
+
MIT License (http://www.opensource.org/licenses/mit-license.html)
|
data/lib/rqrcode.rb
CHANGED
@@ -0,0 +1,53 @@
|
|
1
|
+
# Use this module to HTML-ify the QR code if you just want the default HTML
|
2
|
+
module RQRCode
|
3
|
+
module Export
|
4
|
+
module HTML
|
5
|
+
|
6
|
+
def as_html
|
7
|
+
['<table>', rows.as_html, '</table>'].join
|
8
|
+
end
|
9
|
+
|
10
|
+
private
|
11
|
+
|
12
|
+
def rows
|
13
|
+
Rows.new(self)
|
14
|
+
end
|
15
|
+
|
16
|
+
class Rows < Struct.new(:qr)
|
17
|
+
def as_html
|
18
|
+
rows.map(&:as_html).join
|
19
|
+
end
|
20
|
+
|
21
|
+
def rows
|
22
|
+
qr.modules.each_with_index.map { |qr_module, row_index| Row.new(qr, qr_module, row_index) }
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
class Row < Struct.new(:qr, :qr_module, :row_index)
|
27
|
+
def as_html
|
28
|
+
['<tr>', cells.map(&:as_html).join, '</tr>'].join
|
29
|
+
end
|
30
|
+
|
31
|
+
def cells
|
32
|
+
qr.modules.each_with_index.map { |qr_module, col_index| Cell.new(qr, col_index, row_index) }
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
class Cell < Struct.new(:qr, :col_index, :row_index)
|
37
|
+
def as_html
|
38
|
+
"<td class=\"#{html_class}\"></td>"
|
39
|
+
end
|
40
|
+
|
41
|
+
def html_class
|
42
|
+
dark? ? 'black' : 'white'
|
43
|
+
end
|
44
|
+
|
45
|
+
def dark?
|
46
|
+
qr.dark?(row_index, col_index)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
RQRCode::QRCode.send :include, RQRCode::Export::HTML
|
data/lib/rqrcode/version.rb
CHANGED
data/test/test_rqrcode_export.rb
CHANGED
@@ -3,6 +3,7 @@ require 'minitest/autorun'
|
|
3
3
|
|
4
4
|
require 'rqrcode/export/png'
|
5
5
|
require 'rqrcode/export/svg'
|
6
|
+
require 'rqrcode/export/html'
|
6
7
|
|
7
8
|
# fix for require_relative in < 1.9
|
8
9
|
unless Kernel.respond_to?(:require_relative)
|
@@ -18,8 +19,8 @@ require_relative "../lib/rqrcode"
|
|
18
19
|
describe :QRCodeExportTest do
|
19
20
|
# require_relative "data"
|
20
21
|
|
21
|
-
[:svg, :png].each do |ext|
|
22
|
-
it "must respond_to
|
22
|
+
[:svg, :png, :html].each do |ext|
|
23
|
+
it "must respond_to #{ext}" do
|
23
24
|
RQRCode::QRCode.new('x').must_respond_to :"as_#{ext}"
|
24
25
|
end
|
25
26
|
end
|
@@ -29,8 +30,11 @@ describe :QRCodeExportTest do
|
|
29
30
|
end
|
30
31
|
|
31
32
|
it "must export to svg file" do
|
32
|
-
|
33
|
+
RQRCode::QRCode.new('svg').as_svg.must_match(/<\/svg>/)
|
33
34
|
end
|
34
35
|
|
36
|
+
it "must export to html" do
|
37
|
+
RQRCode::QRCode.new('html').as_html.must_match(/<table>.+<\/table>/)
|
38
|
+
end
|
35
39
|
|
36
40
|
end
|
metadata
CHANGED
@@ -1,8 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rqrcode-with-patches
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
5
|
-
prerelease:
|
4
|
+
version: 0.5.4
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Bjorn Blomqvist and others
|
@@ -10,63 +9,54 @@ authors:
|
|
10
9
|
autorequire:
|
11
10
|
bindir: bin
|
12
11
|
cert_chain: []
|
13
|
-
date: 2013-
|
12
|
+
date: 2013-11-11 00:00:00.000000000 Z
|
14
13
|
dependencies:
|
15
14
|
- !ruby/object:Gem::Dependency
|
16
15
|
name: chunky_png
|
17
16
|
requirement: !ruby/object:Gem::Requirement
|
18
|
-
none: false
|
19
17
|
requirements:
|
20
|
-
- -
|
18
|
+
- - '>='
|
21
19
|
- !ruby/object:Gem::Version
|
22
20
|
version: '0'
|
23
21
|
type: :runtime
|
24
22
|
prerelease: false
|
25
23
|
version_requirements: !ruby/object:Gem::Requirement
|
26
|
-
none: false
|
27
24
|
requirements:
|
28
|
-
- -
|
25
|
+
- - '>='
|
29
26
|
- !ruby/object:Gem::Version
|
30
27
|
version: '0'
|
31
28
|
- !ruby/object:Gem::Dependency
|
32
29
|
name: rake
|
33
30
|
requirement: !ruby/object:Gem::Requirement
|
34
|
-
none: false
|
35
31
|
requirements:
|
36
|
-
- -
|
32
|
+
- - '>='
|
37
33
|
- !ruby/object:Gem::Version
|
38
34
|
version: '0'
|
39
35
|
type: :development
|
40
36
|
prerelease: false
|
41
37
|
version_requirements: !ruby/object:Gem::Requirement
|
42
|
-
none: false
|
43
38
|
requirements:
|
44
|
-
- -
|
39
|
+
- - '>='
|
45
40
|
- !ruby/object:Gem::Version
|
46
41
|
version: '0'
|
47
42
|
- !ruby/object:Gem::Dependency
|
48
43
|
name: bundler
|
49
44
|
requirement: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
45
|
requirements:
|
52
|
-
- -
|
46
|
+
- - '>='
|
53
47
|
- !ruby/object:Gem::Version
|
54
48
|
version: 1.0.0
|
55
49
|
type: :development
|
56
50
|
prerelease: false
|
57
51
|
version_requirements: !ruby/object:Gem::Requirement
|
58
|
-
none: false
|
59
52
|
requirements:
|
60
|
-
- -
|
53
|
+
- - '>='
|
61
54
|
- !ruby/object:Gem::Version
|
62
55
|
version: 1.0.0
|
63
|
-
description:
|
64
|
-
|
56
|
+
description: |
|
57
|
+
rQRCode is a library for encoding QR Codes. The simple
|
65
58
|
interface allows you to create QR Code data structures
|
66
|
-
|
67
59
|
ready to be displayed in the way you choose.
|
68
|
-
|
69
|
-
'
|
70
60
|
email:
|
71
61
|
- darwin@bits2life.com
|
72
62
|
executables: []
|
@@ -88,6 +78,7 @@ files:
|
|
88
78
|
- lib/rqrcode/core_ext/array/behavior.rb
|
89
79
|
- lib/rqrcode/core_ext/integer.rb
|
90
80
|
- lib/rqrcode/core_ext/integer/bitwise.rb
|
81
|
+
- lib/rqrcode/export/html.rb
|
91
82
|
- lib/rqrcode/export/png.rb
|
92
83
|
- lib/rqrcode/export/svg.rb
|
93
84
|
- lib/rqrcode/qrcode.rb
|
@@ -106,30 +97,28 @@ files:
|
|
106
97
|
- test/test_rqrcode_export.rb
|
107
98
|
homepage: https://github.com/bjornblomqvist/rqrcode
|
108
99
|
licenses: []
|
100
|
+
metadata: {}
|
109
101
|
post_install_message:
|
110
102
|
rdoc_options: []
|
111
103
|
require_paths:
|
112
104
|
- lib
|
113
105
|
required_ruby_version: !ruby/object:Gem::Requirement
|
114
|
-
none: false
|
115
106
|
requirements:
|
116
|
-
- -
|
107
|
+
- - '>='
|
117
108
|
- !ruby/object:Gem::Version
|
118
109
|
version: '0'
|
119
110
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
120
|
-
none: false
|
121
111
|
requirements:
|
122
|
-
- -
|
112
|
+
- - '>='
|
123
113
|
- !ruby/object:Gem::Version
|
124
114
|
version: 1.3.6
|
125
115
|
requirements: []
|
126
116
|
rubyforge_project:
|
127
|
-
rubygems_version:
|
117
|
+
rubygems_version: 2.0.6
|
128
118
|
signing_key:
|
129
|
-
specification_version:
|
119
|
+
specification_version: 4
|
130
120
|
summary: A library to encode QR Codes
|
131
121
|
test_files:
|
132
122
|
- test/data.rb
|
133
123
|
- test/test_rqrcode.rb
|
134
124
|
- test/test_rqrcode_export.rb
|
135
|
-
has_rdoc: true
|