Esko XMP structured tags.

Started by richards, February 14, 2017, 11:27:46 AM

Previous topic - Next topic

Phil Harvey

...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

dothem

Hi Phil,
Is it possible to add values from array to the section?
Example: -inksdotshape=["a","abc","abcd"]

         <egGr:inks>
            <rdf:Seq>
               <rdf:li rdf:parseType="Resource">
....
                  <egInk:dotshape>a</egInk:dotshape>
....
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
...
                  <egInk:dotshape>abc</egInk:dotshape>
...
               </rdf:li>
               <rdf:li rdf:parseType="Resource">
...
                  <egInk:dotshape>abcd</egInk:dotshape>
...
               </rdf:li>
            </rdf:Seq>
         </egGr:inks>


thank you in advance for your help

Phil Harvey

How about this?:

exiftool -inks+="[{Dotshape=a},{Dotshape=abc},{Dotshape=abcd}]" FILE

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

dothem

This command inserts new sections, but does not update old.

  <egGr:inks>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.9086514743</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:dotshape>C</egInk:dotshape>
     <egInk:egname>cyan</egInk:egname>
     <egInk:frequency>110.</egInk:frequency>
     <egInk:g>.6491146478</egInk:g>
     <egInk:name>cyan</egInk:name>
     <egInk:r>0.</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.5299102447</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:dotshape>C</egInk:dotshape>
     <egInk:egname>magenta</egInk:egname>
     <egInk:frequency>110.</egInk:frequency>
     <egInk:g>.1982994402</egInk:g>
     <egInk:name>magenta</egInk:name>
     <egInk:r>.921078013</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>0.</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:dotshape>C</egInk:dotshape>
     <egInk:egname>yellow</egInk:egname>
     <egInk:frequency>110.</egInk:frequency>
     <egInk:g>.9642572</egInk:g>
     <egInk:name>yellow</egInk:name>
     <egInk:r>1.</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>a</egInk:dotshape>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>abc</egInk:dotshape>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>abcd</egInk:dotshape>
    </rdf:li>
   </rdf:Seq>
  </egGr:inks>

Phil Harvey

Sorry, I thought that is what you wanted when you said "add values".

If you want to replace the existing inks, you can do this:

exiftool -inksdotshape=a,abc,abcd -sep , FILE

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

dothem

not work :(

value has changed only in the first section, the rest are just added

Quote

-config exif-config.txt -inksdotshape=a;abc;abcd;dc -sep ";" test.pdf

<egGr:inks>
   <rdf:Seq>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.9086514743</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:dotshape>a</egInk:dotshape>
     <egInk:egname>cyan</egInk:egname>
     <egInk:frequency>110.</egInk:frequency>
     <egInk:g>.6491146478</egInk:g>
     <egInk:name>cyan</egInk:name>
     <egInk:r>0.</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>abc</egInk:dotshape>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>abcd</egInk:dotshape>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:dotshape>dc</egInk:dotshape>
    </rdf:li>
    <rdf:li rdf:parseType='Resource'>
     <egInk:angle>67.5</egInk:angle>
     <egInk:attribute>normal</egInk:attribute>
     <egInk:b>.5299102447</egInk:b>
     <egInk:book>process</egInk:book>
     <egInk:egname>magenta</egInk:egname>
     <egInk:frequency>110.</egInk:frequency>
     <egInk:g>.1982994402</egInk:g>
     <egInk:name>magenta</egInk:name>
     <egInk:r>.921078013</egInk:r>
     <egInk:type>process</egInk:type>
    </rdf:li
   ....

Phil Harvey

You're right.  Hmmm.  Try this again with ExifTool 11.57 (just released).

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

dothem

Works! Thank you!

Before that I used 11.56