tdiary-contrib 3.2.2.20130518 → 3.2.2.20130614
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/.travis.yml +1 -3
- data/doc/ja/plugin/image_gps.txt +56 -17
- data/doc/ja/plugin/playstore.txt +31 -0
- data/js/socialbutton.js +8 -2
- data/lib/exifparser/README +6 -12
- data/lib/tdiary-contrib.rb +7 -6
- data/plugin/brow_si.rb +32 -0
- data/plugin/image_gps.rb +110 -56
- data/plugin/instagr.rb +1 -0
- data/plugin/playstore.rb +161 -0
- data/plugin/tweet_quote.rb +102 -48
- data/plugin/twitter_badge.rb +1 -1
- data/util/estraier-search/estraier-register.rb +2 -1
- data/util/estraier-search/estraier-search.rb +2 -1
- data/util/image-gallery/misc/plugin/recent_image.rb +1 -1
- metadata +7 -27
- data/doc/ja/plugin/image_detail.txt +0 -69
- data/doc/ja/plugin/image_gps2.txt +0 -41
- data/lib/exifparser/BUGS +0 -1
- data/lib/exifparser/ChangeLog +0 -169
- data/lib/exifparser/install.rb +0 -1015
- data/lib/exifparser/lib/exifparser/makernote/canon.rb +0 -502
- data/lib/exifparser/lib/exifparser/makernote/fujifilm.rb +0 -415
- data/lib/exifparser/lib/exifparser/makernote/minolta.rb +0 -84
- data/lib/exifparser/lib/exifparser/makernote/mk_nikonflensname.rb +0 -39
- data/lib/exifparser/lib/exifparser/makernote/nikon.rb +0 -267
- data/lib/exifparser/lib/exifparser/makernote/nikon2.rb +0 -581
- data/lib/exifparser/lib/exifparser/makernote/nikonflensname.rb +0 -438
- data/lib/exifparser/lib/exifparser/makernote/olympus.rb +0 -225
- data/lib/exifparser/lib/exifparser/makernote/prove.rb +0 -84
- data/lib/exifparser/lib/exifparser/makernote/sigma.rb +0 -237
- data/lib/exifparser/lib/exifparser/pre-setup.rb +0 -1
- data/lib/exifparser/lib/exifparser/scan.rb +0 -278
- data/lib/exifparser/lib/exifparser/tag.rb +0 -2298
- data/lib/exifparser/lib/exifparser/thumbnail.rb +0 -76
- data/lib/exifparser/lib/exifparser/utils.rb +0 -88
- data/lib/exifparser/lib/exifparser.rb +0 -265
- data/lib/exifparser/sample/exifview.rb +0 -279
- data/plugin/image_detail.rb +0 -143
@@ -1,415 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# exifparser/makernote/fujifilm.rb -
|
3
|
-
#
|
4
|
-
# Copyright (C) 2002 Ryuichi Tamura (r-tam@fsinet.or.jp)
|
5
|
-
#
|
6
|
-
# $Revision: 1.1.1.1 $
|
7
|
-
# $Date: 2002/12/16 07:59:00 $
|
8
|
-
#
|
9
|
-
# Tested against FinePix 6900Z
|
10
|
-
#
|
11
|
-
require 'exifparser/tag'
|
12
|
-
require 'exifparser/utils'
|
13
|
-
|
14
|
-
#
|
15
|
-
#== References
|
16
|
-
#http://www.ba.wakwak.com/%7Etsuruzoh/Computer/Digicams/exif-e.html
|
17
|
-
#
|
18
|
-
|
19
|
-
|
20
|
-
module Exif
|
21
|
-
|
22
|
-
module Tag
|
23
|
-
|
24
|
-
module MakerNote
|
25
|
-
|
26
|
-
#
|
27
|
-
# 0x0000 - Version
|
28
|
-
#
|
29
|
-
class Version < Base
|
30
|
-
end
|
31
|
-
|
32
|
-
#
|
33
|
-
# 0x1000 - Quality
|
34
|
-
#
|
35
|
-
class Quality < Base
|
36
|
-
end
|
37
|
-
|
38
|
-
#
|
39
|
-
# 0x1001 - Sharpness
|
40
|
-
#
|
41
|
-
class Sharpness < Base
|
42
|
-
|
43
|
-
def to_s
|
44
|
-
case @formatted
|
45
|
-
when 1,2
|
46
|
-
'Weak'
|
47
|
-
when 3
|
48
|
-
'Standard'
|
49
|
-
when 4
|
50
|
-
'Strong'
|
51
|
-
else
|
52
|
-
'Unknown'
|
53
|
-
end
|
54
|
-
end
|
55
|
-
|
56
|
-
end
|
57
|
-
|
58
|
-
#
|
59
|
-
# 0x1002 - White
|
60
|
-
#
|
61
|
-
class White < Base
|
62
|
-
|
63
|
-
def to_s
|
64
|
-
case @formatted
|
65
|
-
when 0
|
66
|
-
'Auto'
|
67
|
-
when 256
|
68
|
-
'Daylight'
|
69
|
-
when 512
|
70
|
-
'Cloudy'
|
71
|
-
when 768
|
72
|
-
'DaylightColor-fluorescence'
|
73
|
-
when 769
|
74
|
-
'DaywhiteColor-fluorescence'
|
75
|
-
when 770
|
76
|
-
'WhiteColor-fluorescence'
|
77
|
-
when 1024
|
78
|
-
'Incandescence'
|
79
|
-
when 3840
|
80
|
-
'Custom white balance'
|
81
|
-
else
|
82
|
-
'Unknown'
|
83
|
-
end
|
84
|
-
end
|
85
|
-
|
86
|
-
end
|
87
|
-
|
88
|
-
#
|
89
|
-
# 0x1003 - Color
|
90
|
-
#
|
91
|
-
class Color < Base
|
92
|
-
|
93
|
-
def to_s
|
94
|
-
case @formatted
|
95
|
-
when 0
|
96
|
-
'Normal(STD)'
|
97
|
-
when 256
|
98
|
-
'High(HARD)'
|
99
|
-
when
|
100
|
-
'Low(ORG)'
|
101
|
-
else
|
102
|
-
'Unknown'
|
103
|
-
end
|
104
|
-
end
|
105
|
-
|
106
|
-
end
|
107
|
-
|
108
|
-
#
|
109
|
-
# 0x1004 - Tone
|
110
|
-
#
|
111
|
-
class Tone < Base
|
112
|
-
|
113
|
-
def to_s
|
114
|
-
case @formatted
|
115
|
-
when 0
|
116
|
-
'Normal(STD)'
|
117
|
-
when 256
|
118
|
-
'High(HARD)'
|
119
|
-
when 512
|
120
|
-
'Low(ORG)'
|
121
|
-
else
|
122
|
-
'Unknown'
|
123
|
-
end
|
124
|
-
end
|
125
|
-
|
126
|
-
end
|
127
|
-
|
128
|
-
#
|
129
|
-
# 0x1010 - FlashMode
|
130
|
-
#
|
131
|
-
class FlashMode < Base
|
132
|
-
|
133
|
-
def to_s
|
134
|
-
case @formatted
|
135
|
-
when 0
|
136
|
-
'Auto'
|
137
|
-
when 1
|
138
|
-
'On'
|
139
|
-
when 2
|
140
|
-
'Off'
|
141
|
-
when 3
|
142
|
-
'Red-eye reduction'
|
143
|
-
else
|
144
|
-
'Unknown'
|
145
|
-
end
|
146
|
-
end
|
147
|
-
|
148
|
-
end
|
149
|
-
|
150
|
-
#
|
151
|
-
# 0x1011 - FlashStrength
|
152
|
-
#
|
153
|
-
class FlashStrength < Base
|
154
|
-
end
|
155
|
-
|
156
|
-
#
|
157
|
-
# 0x1020 - Macro
|
158
|
-
#
|
159
|
-
class Macro < Base
|
160
|
-
|
161
|
-
def to_s
|
162
|
-
case @formatted
|
163
|
-
when 0
|
164
|
-
'Off'
|
165
|
-
when 1
|
166
|
-
'On'
|
167
|
-
else
|
168
|
-
'Unknown'
|
169
|
-
end
|
170
|
-
end
|
171
|
-
|
172
|
-
end
|
173
|
-
|
174
|
-
#
|
175
|
-
# 0x1021 - Focus mode
|
176
|
-
#
|
177
|
-
class FocusMode < Base
|
178
|
-
|
179
|
-
def to_s
|
180
|
-
case @formatted
|
181
|
-
when 0
|
182
|
-
'Auto focus'
|
183
|
-
when 1
|
184
|
-
'Manual focus'
|
185
|
-
else
|
186
|
-
'Unknown'
|
187
|
-
end
|
188
|
-
end
|
189
|
-
|
190
|
-
end
|
191
|
-
|
192
|
-
#
|
193
|
-
# 0x1030 - SlowSync
|
194
|
-
#
|
195
|
-
class SlowSync < Base
|
196
|
-
|
197
|
-
def to_s
|
198
|
-
case @formatted
|
199
|
-
when 0
|
200
|
-
'Off'
|
201
|
-
when 1
|
202
|
-
'On'
|
203
|
-
else
|
204
|
-
'Unknown'
|
205
|
-
end
|
206
|
-
end
|
207
|
-
|
208
|
-
end
|
209
|
-
|
210
|
-
#
|
211
|
-
# 0x1031 - PictureMode
|
212
|
-
#
|
213
|
-
class PictureMode < Base
|
214
|
-
|
215
|
-
def to_s
|
216
|
-
case @formatted
|
217
|
-
when 0
|
218
|
-
'Auto'
|
219
|
-
when 1
|
220
|
-
'Portrait scene'
|
221
|
-
when 2
|
222
|
-
'Landscape scene'
|
223
|
-
when 4
|
224
|
-
'Sports scene'
|
225
|
-
when 5
|
226
|
-
'Night scene'
|
227
|
-
when 6
|
228
|
-
'Program Auto Exposure'
|
229
|
-
when 256
|
230
|
-
'Aperture prior Auto Exposure'
|
231
|
-
when 512
|
232
|
-
'Shutter prior Auto Exposure'
|
233
|
-
when 768
|
234
|
-
'Manual exposure'
|
235
|
-
else
|
236
|
-
'Unknown'
|
237
|
-
end
|
238
|
-
end
|
239
|
-
|
240
|
-
end
|
241
|
-
|
242
|
-
#
|
243
|
-
# 0x1032 - Unknown
|
244
|
-
#
|
245
|
-
|
246
|
-
#
|
247
|
-
# 0x1100 - Cont_Bracket
|
248
|
-
#
|
249
|
-
class Cont_Bracket < Base
|
250
|
-
|
251
|
-
def to_s
|
252
|
-
case @formatted
|
253
|
-
when 0
|
254
|
-
'Off'
|
255
|
-
when 1
|
256
|
-
'On'
|
257
|
-
else
|
258
|
-
'Unknown'
|
259
|
-
end
|
260
|
-
end
|
261
|
-
|
262
|
-
def name
|
263
|
-
'Continuous/AutoBracket'
|
264
|
-
end
|
265
|
-
|
266
|
-
end
|
267
|
-
|
268
|
-
#
|
269
|
-
# 0x1200 - Unknown
|
270
|
-
#
|
271
|
-
|
272
|
-
#
|
273
|
-
# 0x1300 - Blur warning
|
274
|
-
#
|
275
|
-
class BlurWarning < Base
|
276
|
-
|
277
|
-
def to_s
|
278
|
-
case @formatted
|
279
|
-
when 0
|
280
|
-
'No blur warning'
|
281
|
-
when 1
|
282
|
-
'Blur warning'
|
283
|
-
else
|
284
|
-
'Unknown'
|
285
|
-
end
|
286
|
-
end
|
287
|
-
|
288
|
-
end
|
289
|
-
|
290
|
-
#
|
291
|
-
# 0x1301 - Focus warning
|
292
|
-
#
|
293
|
-
class FocusWarning < Base
|
294
|
-
|
295
|
-
def to_s
|
296
|
-
case @formatted
|
297
|
-
when 0
|
298
|
-
'Auto Focus good'
|
299
|
-
when 1
|
300
|
-
'Out of Focus'
|
301
|
-
else
|
302
|
-
'Unknown'
|
303
|
-
end
|
304
|
-
end
|
305
|
-
|
306
|
-
end
|
307
|
-
|
308
|
-
#
|
309
|
-
# 0x1302 - AE warning
|
310
|
-
#
|
311
|
-
class AutoExposureWarning < Base
|
312
|
-
|
313
|
-
def to_s
|
314
|
-
case @formatted
|
315
|
-
when 0
|
316
|
-
'Auto exposure good'
|
317
|
-
when 1
|
318
|
-
'Over exposure'
|
319
|
-
else
|
320
|
-
'Unknown'
|
321
|
-
end
|
322
|
-
end
|
323
|
-
|
324
|
-
end
|
325
|
-
|
326
|
-
end
|
327
|
-
|
328
|
-
#
|
329
|
-
# Tags used in Fujifilm makernote
|
330
|
-
#
|
331
|
-
FujifilmIFDTable = {
|
332
|
-
0x0000 => MakerNote::Version,
|
333
|
-
0x1000 => MakerNote::Quality,
|
334
|
-
0x1001 => MakerNote::Sharpness,
|
335
|
-
0x1002 => MakerNote::White,
|
336
|
-
0x1003 => MakerNote::Color,
|
337
|
-
0x1004 => MakerNote::Tone,
|
338
|
-
0x1010 => MakerNote::FlashMode,
|
339
|
-
0x1011 => MakerNote::FlashStrength,
|
340
|
-
0x1020 => MakerNote::Macro,
|
341
|
-
0x1021 => MakerNote::FocusMode,
|
342
|
-
0x1030 => MakerNote::SlowSync,
|
343
|
-
0x1031 => MakerNote::PictureMode,
|
344
|
-
0x1032 => Unknown,
|
345
|
-
0x1100 => MakerNote::Cont_Bracket,
|
346
|
-
0x1200 => Unknown,
|
347
|
-
0x1300 => MakerNote::BlurWarning,
|
348
|
-
0x1301 => MakerNote::FocusWarning,
|
349
|
-
0x1302 => MakerNote::AutoExposureWarning
|
350
|
-
}
|
351
|
-
|
352
|
-
end
|
353
|
-
|
354
|
-
class Fujifilm
|
355
|
-
|
356
|
-
def initialize(fin, tiff_origin, dataPos, byteOrder_module)
|
357
|
-
@fin = fin
|
358
|
-
@tiffHeader0 = tiff_origin
|
359
|
-
@dataPos = dataPos
|
360
|
-
@byteOrder_module = Utils::Decode::Intel # force Intel
|
361
|
-
self.extend @byteOrder_module
|
362
|
-
end
|
363
|
-
|
364
|
-
def scan_IFD
|
365
|
-
#
|
366
|
-
# Fujifilm MakerNote starts from 8 byte from the origin
|
367
|
-
#
|
368
|
-
@fin.pos = @dataPos + 8
|
369
|
-
offset = decode_ushort(fin_read_n(2))
|
370
|
-
@fin.pos = @dataPos + offset
|
371
|
-
#
|
372
|
-
# get the number of tags
|
373
|
-
#
|
374
|
-
numDirs = decode_ushort(fin_read_n(2))
|
375
|
-
#
|
376
|
-
# now scan them
|
377
|
-
#
|
378
|
-
1.upto(numDirs) {
|
379
|
-
curpos_tag = @fin.pos
|
380
|
-
tag = parseTagID(fin_read_n(2))
|
381
|
-
tagclass = Tag.find(tag.hex, Tag::FujifilmIFDTable)
|
382
|
-
unit, formatter = Tag::Format::Unit[decode_ushort(fin_read_n(2))]
|
383
|
-
count = decode_ulong(fin_read_n(4))
|
384
|
-
tagdata = fin_read_n(4)
|
385
|
-
|
386
|
-
obj = tagclass.new(tag, "MakerNote", count)
|
387
|
-
obj.extend formatter, @byteOrder_module
|
388
|
-
obj.pos = curpos_tag
|
389
|
-
if unit * count > 4
|
390
|
-
curpos = @fin.pos
|
391
|
-
begin
|
392
|
-
@fin.pos = @dataPos + decode_ulong(tagdata)
|
393
|
-
obj.dataPos = @fin.pos
|
394
|
-
obj.data = fin_read_n(unit*count)
|
395
|
-
ensure
|
396
|
-
@fin.pos = curpos
|
397
|
-
end
|
398
|
-
else
|
399
|
-
obj.dataPos = @fin.pos - 4
|
400
|
-
obj.data = tagdata
|
401
|
-
end
|
402
|
-
obj.processData
|
403
|
-
yield obj
|
404
|
-
}
|
405
|
-
end
|
406
|
-
|
407
|
-
private
|
408
|
-
|
409
|
-
def fin_read_n(n)
|
410
|
-
@fin.read(n)
|
411
|
-
end
|
412
|
-
|
413
|
-
end
|
414
|
-
|
415
|
-
end
|
@@ -1,84 +0,0 @@
|
|
1
|
-
#
|
2
|
-
# exifparser/makernote/minolta.rb
|
3
|
-
#
|
4
|
-
# $Revision: 1.2 $
|
5
|
-
# $Date: 2003/05/13 15:41:28 $
|
6
|
-
#
|
7
|
-
require 'exifparser/tag'
|
8
|
-
require 'exifparser/utils'
|
9
|
-
|
10
|
-
module Exif
|
11
|
-
|
12
|
-
module Tag
|
13
|
-
|
14
|
-
module MakerNote
|
15
|
-
end
|
16
|
-
|
17
|
-
MinoltaIFDTable = {
|
18
|
-
}
|
19
|
-
|
20
|
-
end
|
21
|
-
|
22
|
-
class Minolta
|
23
|
-
|
24
|
-
def initialize(fin, tiff_origin, dataPos, byteOrder_module)
|
25
|
-
@fin = fin
|
26
|
-
@tiffHeader0 = tiff_origin
|
27
|
-
@dataPos = dataPos
|
28
|
-
@byteOrder_module = byteOrder_module
|
29
|
-
self.extend @byteOrder_module
|
30
|
-
end
|
31
|
-
|
32
|
-
def scan_IFD
|
33
|
-
#
|
34
|
-
# Minolta MakerNote starts from 0 byte from the origin
|
35
|
-
#
|
36
|
-
|
37
|
-
@fin.pos = @dataPos + 0
|
38
|
-
|
39
|
-
#
|
40
|
-
# get the number of tags
|
41
|
-
#
|
42
|
-
numDirs = decode_ushort(fin_read_n(2))
|
43
|
-
|
44
|
-
#
|
45
|
-
# now scan them
|
46
|
-
#
|
47
|
-
1.upto(numDirs) {
|
48
|
-
curpos_tag = @fin.pos
|
49
|
-
tag = parseTagID(fin_read_n(2))
|
50
|
-
tagclass = Tag.find(tag.hex, Tag::MinoltaIFDTable)
|
51
|
-
unit, formatter = Tag::Format::Unit[decode_ushort(fin_read_n(2))]
|
52
|
-
count = decode_ulong(fin_read_n(4))
|
53
|
-
tagdata = fin_read_n(4)
|
54
|
-
|
55
|
-
obj = tagclass.new(tag, "MakerNote", count)
|
56
|
-
obj.extend formatter, @byteOrder_module
|
57
|
-
obj.pos = curpos_tag
|
58
|
-
if unit * count > 4
|
59
|
-
curpos = @fin.pos
|
60
|
-
begin
|
61
|
-
@fin.pos = @tiffHeader0 + decode_ulong(tagdata)
|
62
|
-
obj.dataPos = @fin.pos
|
63
|
-
obj.data = fin_read_n(unit*count)
|
64
|
-
ensure
|
65
|
-
@fin.pos = curpos
|
66
|
-
end
|
67
|
-
else
|
68
|
-
obj.dataPos = @fin.pos - 4
|
69
|
-
obj.data = tagdata
|
70
|
-
end
|
71
|
-
obj.processData
|
72
|
-
yield obj
|
73
|
-
}
|
74
|
-
end
|
75
|
-
|
76
|
-
private
|
77
|
-
|
78
|
-
def fin_read_n(n)
|
79
|
-
@fin.read(n)
|
80
|
-
end
|
81
|
-
|
82
|
-
end
|
83
|
-
|
84
|
-
end
|
@@ -1,39 +0,0 @@
|
|
1
|
-
#!/usr/bin/env ruby
|
2
|
-
#
|
3
|
-
# mk_nikonflensname.rb
|
4
|
-
#
|
5
|
-
# .. makes the Ruby source code of hash table: Nikon EXIF LensParameters => Lens model name.
|
6
|
-
# This is for Exif::Makernote::Tag::LensParameters class
|
7
|
-
# in exifparser/nmakernote/nikon2.rb
|
8
|
-
#
|
9
|
-
# usage : ruby mk_nikonlens_hash.rb nikonmn.cpp >nikonflensname.rb
|
10
|
-
# ("nikonmn.cpp" is a exiv2(http://www.exiv2.org/)'s nikon makernote module source code. )
|
11
|
-
#
|
12
|
-
# Copyright (c) 2009 N.KASHIJUKU <n-kashi[at]whi.m-net.ne.jp>
|
13
|
-
# You can redistribute it and/or modify it under GPL2.
|
14
|
-
#
|
15
|
-
print <<TEOS
|
16
|
-
module Exif
|
17
|
-
module Tag
|
18
|
-
module NikonFmount
|
19
|
-
LensName = {
|
20
|
-
TEOS
|
21
|
-
|
22
|
-
open(ARGV[0], "r") do |file|
|
23
|
-
file.each_line do |s|
|
24
|
-
if (/^\{(0x..),(0x..),(0x..),(0x..),(0x..),(0x..),(0x..),0x..,0x..,0x..,0x.., \"(.*)\", ".*", "(.*)"\}/ =~ s) != nil
|
25
|
-
str = %Q[ \[#{$1}, #{$2}, #{$3}, #{$4}, #{$5}, #{$6}, #{$7}\] => "#{$8} #{$9}"]
|
26
|
-
str.sub!("f/", "F") if str.include?("Nikon")
|
27
|
-
print str + ",\n"
|
28
|
-
end
|
29
|
-
end
|
30
|
-
end
|
31
|
-
|
32
|
-
print <<EEOS
|
33
|
-
[0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00] => ""
|
34
|
-
}
|
35
|
-
end
|
36
|
-
end
|
37
|
-
end
|
38
|
-
EEOS
|
39
|
-
|