Copy link to clipboard
Copied
I have been editing metadata in Bridge ( I find it the easiest Adobe software to to this in). But I am struggling to see where I can sync the metadata from one file to another?
Copy link to clipboard
Copied
Select the master file, then Tools->Create Metadata Template. Check the items you want to sync and save the template. Now you can apply it to your other files and sync that metadata.
Copy link to clipboard
Copied
Thanks. I was hoping there would be a faster way than creating a template - similar to the function in LR. I might end up with endless templates this way!
Copy link to clipboard
Copied
Just delete extra templates when you are done.
Copy link to clipboard
Copied
I'm aware of this method but I was looking for a simpler function similar to other Adobe applications such as the 'sync metadata' on LR.
Copy link to clipboard
Copied
There is probably a script floating around the Internet that would do this.
Copy link to clipboard
Copied
I mocked up a quick script that will copy ALL metadata from a file and apply it to all other selected files. This could be refined with a dialog and checkboxes to select which metadata is sync'd.
Save this into a PLAIN TEXT file with file extension ".jsx". Open Bridge Preferences->Startup Scripts and click the Reveal button, then drag the .jsx file in and relaunch Bridge. You'll see a new "Sync Metadata" command under Tools.
If an error comes up while running this, its likely that you have selected files which cannot contain metadata (say, a Word file.)
--------------------
if(BridgeTalk.appName == 'bridge'){
var metaSyncMenu = MenuElement.create('command', 'Sync Metadata', 'at the end of Tools');
metaSyncMenu.onSelect = function(){
try{
if (ExternalObject.AdobeXMPScript == undefined) ExternalObject.AdobeXMPScript = new ExternalObject('lib:AdobeXMPScript');
var thumbs = app.document.selections;
if(thumbs[0].hasMetadata == true){
if(confirm('Apply all metadata from ' + thumbs[0].name + ' to selected files?') == true){
var ftMeta = thumbs[0].synchronousMetadata;
var ftXMP = new XMPMeta(ftMeta.serialize());
var ftUpdatedPacket = ftXMP.serialize(XMPConst.SERIALIZE_OMIT_PACKET_WRAPPER | XMPConst.SERIALIZE_USE_COMPACT_FORMAT);
for(i = 1; i < thumbs.length; i++){
thumbs[i].metadata = new Metadata(ftUpdatedPacket);
}
}
}
}
catch(e){
alert(e + e.line);
}
}
}
Copy link to clipboard
Copied
Thanks, thats great. I'll give it a go now.