#------------------------------------------------------------------------------ # File: join_tags.config # # Description: ExifTool config file to generate new tags from XML name/value pairs # # Revisions: 2020-11-16 - P. Harvey created #------------------------------------------------------------------------------ my $nameTag = 'AcquisitionRecordGroupItemName'; my $valueTag = 'AcquisitionRecordGroupItemValue'; sub JoinTags($$) { my ($val, $et) = @_; my $table = Image::ExifTool::GetTagTable('Image::ExifTool::XMP::XML'); my $i; for ($i=0; ;++$i) { my $suffix = $i ? " ($i)" : ''; my $name = $et->GetValue("$nameTag$suffix") or last; my $value = $et->GetValue("$valueTag$suffix"); last unless defined $value; my $tagInfo = Image::ExifTool::AddTagToTable($table, $name, { Name => Image::ExifTool::MakeTagName($name), }); $et->FoundTag($tagInfo, $value); } return undef; } %Image::ExifTool::UserDefined = ( 'Image::ExifTool::Composite' => { JoinTags => { Desire => { 0 => $nameTag, 1 => $valueTag, }, RawConv => \&JoinTags, }, }, ); 1; #end