Changeset 22448
- Timestamp:
- 2010-07-20T14:07:33+12:00 (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/greenstone2/perllib/plugins/EmbeddedMetadataPlugin.pm
r22293 r22448 123 123 $tag =~ s/^([^\s]+)\s.*$/$1/i; 124 124 my $value = $self->{'exiftool'}->GetValue($tag); 125 if (defined $value && $value =~ /[a-z0-9]+/i) 126 { 127 if (ref $value eq 'SCALAR') 128 { 129 if ($$value =~ /^Binary data/) 130 { 131 $value = "($$value)"; 132 } 133 else 134 { 135 my $len = length($$value); 136 $value = "(Binary data $len bytes)"; 137 } 138 } 125 if (defined $value && $value =~ /[a-z0-9]+/i) { 139 126 140 127 my $field = "ex.$group.$tag"; … … 144 131 $exif_metadata{$field} = []; 145 132 } 146 push (@{$exif_metadata{$field}}, $self->gsSafe($value)); 147 ## print STDERR "**** adding $field: $value\n"; 148 149 ++$metadata_count; 150 } 133 134 my $array = 0; 135 if (ref $value eq 'SCALAR') { 136 137 if ($$value =~ /^Binary data/) { 138 139 $value = "($$value)"; 140 } 141 else { 142 143 my $len = length($$value); 144 $value = "(Binary data $len bytes)"; 145 } 146 } 147 elsif (ref $value eq 'ARRAY') { 148 $array = 1; 149 foreach my $v (@$value) { 150 push (@{$exif_metadata{$field}}, $self->gsSafe($v)); 151 #print STDERR "**** adding array $field: $v\n"; 152 ++$metadata_count; 153 } 154 } 155 if (!$array) { 156 push (@{$exif_metadata{$field}}, $self->gsSafe($value)); 157 #print STDERR "**** adding $field: $value\n"; 158 159 ++$metadata_count; 160 } 161 } 151 162 } 152 163 }
Note:
See TracChangeset
for help on using the changeset viewer.