Sunday, 21 December 2014

Adobe tricked me

Yesterday I was processing a pano. Then I spent quite a lot of time trying to write the description for it. There was a big building in the photo that I thought held a big float. So I spent some time researching, trying to find out what those big floats are called.

Then, after I had found the info and written it up, I found a blog post that contained an image of the park map where the pano was taken. This showed an image of a boat, not a float. So I then spent quite a while trying to figure out what it said.

The text was very small on the map photo. I could see in my pano the building had the same text on the edge of it. But in my photo the text was quite small, and some characters were partially or completely covered with leaves.

A further problem is that I'm rubbish at writing Chinese / Japanese characters, where the stroke order, direction, and number of strokes are all important for the MS IME to detect what character you're trying to write. But I did eventually manage to get a few of the characters correct, and with Google's help, managed to find the full name of the building.

When I'd finished writing the description, I went to add it to my photo, but the Adobe XMP FileInfo panel I use wasn't there, since I reinstalled Windows a week or so ago. I tried to find a backup of the panel file, but it seems I never made one.

I still had the source files for the panel, so it seemed I would need to compile it again. Looking at the Adobe website, it seems that CC 2014 uses a different method fr creating custom FileInfo panels to CC and CS6. But is Bridge CC or CC 2014? I tried installing one of the custom panels included with the CS6 XMP FileInfo SDK, but I could not get it to load.

Today I was continuing to try and solve this problem. It turned out that the issue was to with the location I was specifiying in the Flash Trust File. I had installed the panel to the already existing folder C:\Users\\AppData\Roaming\Adobe\XMP\Custom File Info\4.0\panels. But it seems that this is just a cheeky joke on Adobe's part by creating this folder. You actually have to install the panel to C:\Users\\AppData\Roaming\Adobe\XMP\Custom File Info Panels\4.0\panels.

Once I had figured this out and got the basic sample panel to load in Bridge's FileInfo, I tried to build my custom panel. But it wouldn't build. After a bit of working out what the problem was, I realised that the directory paths in the build.properties file need to use forward slashes as directory separators, not back slashes as windows uses. Quite confusing!

After solving that, the problem was now that it was Unable to locate tools.jar. It was looking for it in the jre directory, not jdk, so no wonder. The solution to this was to change the %JAVA_HOME% environment variable to explicitly point to the JDK directory. (Previously I just had it set to C:\Program Files\Java).

Well, hoo-ray my panel would build. But boo-ray, it wasn't showing up in Bridge. The answer - I needed a manifest.xml file for the panel. After doing this I could open the panel, but it would make Bridge freeze. I had to close the Bridge process from Task Manager to terminate it.

I tried building the basic sample panel to see if it was a problem with my panel. After correcting an error in the panel's code, which meant that the panel couldn't compile, I built the sample panel okay. But after adding it to the custom FileInfo panels folder, and opening Bridge, switching to the panel had the same effect - Bridge would crash and freeze.

I thought maybe this issue was the Flex project, now under Apache rather than Adobe, has had some changes made that make it incompatible with the old Adobe released Flex. So I downloaded the latest version of Flex from Adobe. After building the basic panel with that, I still got the same result.

So I tried using Flex 3 from Adobe (rather than Flex 4). And hey-ho, it worked! After some Googling, I came across this post from an Adobe employee, who does say that it needs the Flex 3 SDK to work, and won't work with Flex 4: Re: How to create a custom panel in the right way (without having an empty panel in the file info) ? A pity they couldn't be bothered to include that information in the XMP FileInfo panel SDK documentation.

With that done, all I had to do was copy over the XMP FileInfo settings (which I had backed up). Strangely these do go in a Custom File Info folder that had already been created, you don't have to create a new Custom File Info Panels folder for them. Maybe Adobe did this just to make it all as confusing as possible. Thankfully this was quite painless, and when I opened Bridge again, all my keywords were there (I also copied over the Bridge settings, which are separate to the XMP settings), and my custom FileInfo panel had all its data there too.

So, it's probably taken over a day's worth of work just to research the description and then be able to add it to my image.

No comments: