qrscanner 0.4 → 0.4.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +2 -0
- data/ext/qrscanner/qrscanner.c +22 -18
- data/qrscanner.gemspec +2 -2
- metadata +3 -2
data/CHANGELOG
CHANGED
data/ext/qrscanner/qrscanner.c
CHANGED
@@ -13,28 +13,32 @@ void Init_qrscanner();
|
|
13
13
|
VALUE method_decode(VALUE self, VALUE fn);
|
14
14
|
|
15
15
|
void Init_qrscanner() {
|
16
|
-
|
17
|
-
|
16
|
+
QrScanner = rb_define_module("QrScanner");
|
17
|
+
rb_define_singleton_method(QrScanner, "decode", method_decode, 1);
|
18
18
|
}
|
19
19
|
|
20
20
|
VALUE method_decode(VALUE self, VALUE fn) {
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
21
|
+
VALUE ret;
|
22
|
+
char *str = NULL;
|
23
|
+
int dpis[] = {0, 40, 50, 60, 70, 75, 80, 85, 90, 95, 100, 105, 110, 115, 120, 125, 130, 135, 140, 145, 150, 155, 160, 165, 170, 175, 180, 185, 190, 195, 200, 210, 220, 230, 240, 250, 260, 280, 300, 450};
|
24
|
+
int blurs[] = {0, 2, 4, 6, 8, 10, 15, 20, 50};
|
25
|
+
int num_dpis, num_blurs, dpi, blur;
|
26
|
+
|
27
|
+
num_dpis = sizeof(dpis) / sizeof(*dpis);
|
28
|
+
num_blurs = sizeof(blurs) / sizeof(*blurs);
|
29
|
+
|
30
|
+
for(blur=0; !str && blur<num_blurs; blur++) {
|
31
|
+
for(dpi=0; !str && dpi<num_dpis; dpi++) {
|
32
|
+
/*printf("dpi=%d, blur=%d\n", dpis[dpi], blurs[blur]);*/
|
33
|
+
str = decode_qr_image(StringValuePtr(fn), dpis[dpi], blurs[blur]);
|
34
|
+
}
|
35
|
+
}
|
36
|
+
if(!str)
|
37
|
+
return Qnil;
|
34
38
|
|
35
|
-
|
36
|
-
|
37
|
-
|
39
|
+
ret = rb_str_new2(str);
|
40
|
+
free(str);
|
41
|
+
return(ret);
|
38
42
|
}
|
39
43
|
|
40
44
|
//}
|
data/qrscanner.gemspec
CHANGED
@@ -2,11 +2,11 @@
|
|
2
2
|
|
3
3
|
Gem::Specification.new do |s|
|
4
4
|
s.name = %q{qrscanner}
|
5
|
-
s.version = "0.4"
|
5
|
+
s.version = "0.4.1"
|
6
6
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 1.2") if s.respond_to? :required_rubygems_version=
|
8
8
|
s.authors = ["Andrew Snow"]
|
9
|
-
s.date = %q{2011-
|
9
|
+
s.date = %q{2011-09-14}
|
10
10
|
s.default_executable = %q{qrscanner}
|
11
11
|
s.description = %q{Ruby gem QR code scanner based on ZXing}
|
12
12
|
s.email = %q{andrew@modulus.org}
|
metadata
CHANGED
@@ -5,7 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 4
|
8
|
-
|
8
|
+
- 1
|
9
|
+
version: 0.4.1
|
9
10
|
platform: ruby
|
10
11
|
authors:
|
11
12
|
- Andrew Snow
|
@@ -13,7 +14,7 @@ autorequire:
|
|
13
14
|
bindir: bin
|
14
15
|
cert_chain: []
|
15
16
|
|
16
|
-
date: 2011-
|
17
|
+
date: 2011-09-14 00:00:00 +10:00
|
17
18
|
default_executable:
|
18
19
|
dependencies: []
|
19
20
|
|