Umlauts into pdf-keywords with exiftool 8.15

Started by ruedigers, June 30, 2011, 10:19:09 AM

Previous topic - Next topic

ruedigers

Hello all, Hello Phil,

took me a bit of time and a bit of sanity to come to this point and to ask this question:

Could it be there is a known bug in exiftool 8.15 (which is the one included with the stable debian release) with writing umlauts and other special characters into the keywords of a PDF?

root@lamp:~# uname -a
Linux lamp 2.6.32-5-amd64 #1 SMP Wed May 18 23:13:22 UTC 2011 x86_64 GNU/Linux
root@lamp:~# exiftool -ver
8.15


Output of the keywords in putty set to UTF8 works fine:
root@lamp:~# exiftool 53_20091214_20091214_878460.pdf
ExifTool Version Number         : 8.15
File Name                       : 53_20091214_20091214_878460.pdf
Directory                       : .
File Size                       : 156 kB
File Modification Date/Time     : 2011:06:30 15:47:01+02:00
File Permissions                : rw-r-----
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
Author                          : Redaktion ZAHLENBILDER, Bergmoser + Höller Verlag AG
Create Date                     : 2008:04:11 14:19:25+02:00
Creator                         :
Keywords                        : China;, Verstädterung;, Landflucht;, Stadtbevölkerung;, Bevölkerung;, Stadtbewohner;, Urbanisierung;, Binnenwanderung
Producer                        : PDFlib+PDI 6.0.3p5 (PHP5/Linux)
Subject                         : Weltwirtschaft und Weltpolitik
Title                           : 878460: China - Städte als Magnet
Page Count                      : 1
root@lamp:~#



Squeeze those keywords into a jpg works fine (first a dump without keywords, then set them, then dump exif with them):
root@lamp:~# exiftool smalltest.jpg
ExifTool Version Number         : 8.15
File Name                       : smalltest.jpg
Directory                       : .
File Size                       : 2.8 kB
File Modification Date/Time     : 2011:06:30 15:31:15+02:00
File Permissions                : rw-r-----
File Type                       : JPEG
MIME Type                       : image/jpeg
JFIF Version                    : 1.01
Resolution Unit                 : inches
X Resolution                    : 72
Y Resolution                    : 72
Comment                         :  This image was processed by Neat Image. NeatImage.com
Image Width                     : 75
Image Height                    : 49
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)
Image Size                      : 75x49
root@lamp:~# exiftool -sep ", " -keywords="`exiftool 53_20091214_20091214_878460.pdf | egrep "^Keywords" | sed -e "s|^[^:]*: ||" -e "s|;, *|, |g"`" ./smalltest.jpg
    1 image files updated
root@lamp:~# exiftool smalltest.jpg
ExifTool Version Number         : 8.15
File Name                       : smalltest.jpg
Directory                       : .
File Size                       : 3.0 kB
File Modification Date/Time     : 2011:06:30 16:13:14+02:00
File Permissions                : rw-r--r--
File Type                       : JPEG
MIME Type                       : image/jpeg
JFIF Version                    : 1.01
Resolution Unit                 : inches
X Resolution                    : 72
Y Resolution                    : 72
Current IPTC Digest             : d108be1ec8c9f656f5a2aac346b2e186
Keywords                        : China, Verstädterung, Landflucht, Stadtbevölkerung, Bevölkerung, Stadtbewohner, Urbanisierung, Binnenwanderung
Application Record Version      : 4
Comment                         :  This image was processed by Neat Image. NeatImage.com
Image Width                     : 75
Image Height                    : 49
Encoding Process                : Baseline DCT, Huffman coding
Bits Per Sample                 : 8
Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)
Image Size                      : 75x49
root@lamp:~#



Trying to read the from one pdf and write them into another pdf does not complain, but garbles the Keyword-field:   :(
root@lamp:~# exiftool test.pdf
ExifTool Version Number         : 8.15
File Name                       : test.pdf
Directory                       : .
File Size                       : 118 kB
File Modification Date/Time     : 2011:06:30 08:34:18+02:00
File Permissions                : rw-r-----
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
XMP Toolkit                     : Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39
Metadata Date                   : 2008:04:02 11:50:23+02:00
Creator Tool                    : PScript5.dll Version 5.2.2
Format                          : application/pdf
Document ID                     : uuid:6ca5a98b-099a-4fea-82a8-bfe576e8c5cd
Instance ID                     : uuid:f070fb76-055a-4bce-80bc-67d511c4b7d5
Page Count                      : 1
Create Date                     : 2008:03:27 14:09:51+01:00
Author                          : Redaktion ZAHLENBILDER
Creator                         : PScript5.dll Version 5.2.2
Producer                        : Acrobat Distiller 8.1.0 (Windows)
Modify Date                     : 2008:04:02 11:50:23+02:00
Title                           : 878 460: China – Städte als Magnet
root@lamp:~# exiftool -sep ", " -keywords="`exiftool 53_20091214_20091214_878460.pdf | egrep "^Keywords" | sed -e "s|^[^:]*: ||" -e "s|;, *|, |g"`" ./test.pdf
    1 image files updated
root@lamp:~# exiftool test.pdf
ExifTool Version Number         : 8.15
File Name                       : test.pdf
Directory                       : .
File Size                       : 119 kB
File Modification Date/Time     : 2011:06:30 16:16:44+02:00
File Permissions                : rw-r--r--
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
XMP Toolkit                     : Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39
Metadata Date                   : 2008:04:02 11:50:23+02:00
Creator Tool                    : PScript5.dll Version 5.2.2
Format                          : application/pdf
Document ID                     : uuid:6ca5a98b-099a-4fea-82a8-bfe576e8c5cd
Instance ID                     : uuid:f070fb76-055a-4bce-80bc-67d511c4b7d5
Page Count                      : 1
Create Date                     : 2008:03:27 14:09:51+01:00
Author                          : Redaktion ZAHLENBILDER
Creator                         : PScript5.dll Version 5.2.2
Producer                        : Acrobat Distiller 8.1.0 (Windows)
Modify Date                     : 2008:04:02 11:50:23+02:00
Title                           : 878 460: China – Städte als Magnet
Keywords                        : China, þÿ
root@lamp:~#


Was or is this a known problem?   :-\    :(

Any help on this would be great!   :)

Phil Harvey

Thanks for the bug report.  This is definitely a bug, but it isn't a known one.

The work around in your case is to just drop the -sep ", " from your command.  The PDF keywords aren't really stored as a list anyway, so the command is perfectly fine without this option, and will store the PDF Keywords in the correct form.

But I will fix this bug in the next release, so that it also works when writing List items with special characters individually as you are doing.

- Phil

P.S.  The Debian maintainer for ExifTool is MIA -- there have been many production releases since 8.15.
...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 ($).

ruedigers

Hello Phil,

thanks so much for your answer!! :)  8)  I thought I was losing it, and did not want to sound like I am complaining, and the problem could very well be my quite outdated version of exiftool.

I did try it without the -sep ", " , and that worked in my test (as you said it would).  So I tried one more thing (not sure if this is the same portion of code or another area, but running these additional tests was easy enough).

First, again, I dump the exif-data to show the keywords are empty.  Then I add keywords (with adding I am saying I am using "+=", setting them would be just "=").  That works fine as well.  Then I add them again, and apparently causes the same problem:
root@lamp:~# exiftool test.pdf
ExifTool Version Number         : 8.15
File Name                       : test.pdf
Directory                       : .
File Size                       : 118 kB
File Modification Date/Time     : 2011:06:30 08:34:18+02:00
File Permissions                : rw-r-----
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
XMP Toolkit                     : Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39
Metadata Date                   : 2008:04:02 11:50:23+02:00
Creator Tool                    : PScript5.dll Version 5.2.2
Format                          : application/pdf
Document ID                     : uuid:6ca5a98b-099a-4fea-82a8-bfe576e8c5cd
Instance ID                     : uuid:f070fb76-055a-4bce-80bc-67d511c4b7d5
Page Count                      : 1
Create Date                     : 2008:03:27 14:09:51+01:00
Author                          : Redaktion ZAHLENBILDER
Creator                         : PScript5.dll Version 5.2.2
Producer                        : Acrobat Distiller 8.1.0 (Windows)
Modify Date                     : 2008:04:02 11:50:23+02:00
Title                           : 878 460: China – Städte als Magnet
root@lamp:~# exiftool -keywords+="-äöü--ÄÖÜ--ß-éèê-" ./test.pdf
    1 image files updated
root@lamp:~# exiftool test.pdf
ExifTool Version Number         : 8.15
File Name                       : test.pdf
Directory                       : .
File Size                       : 119 kB
File Modification Date/Time     : 2011:07:01 07:42:32+02:00
File Permissions                : rw-r--r--
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
XMP Toolkit                     : Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39
Metadata Date                   : 2008:04:02 11:50:23+02:00
Creator Tool                    : PScript5.dll Version 5.2.2
Format                          : application/pdf
Document ID                     : uuid:6ca5a98b-099a-4fea-82a8-bfe576e8c5cd
Instance ID                     : uuid:f070fb76-055a-4bce-80bc-67d511c4b7d5
Page Count                      : 1
Create Date                     : 2008:03:27 14:09:51+01:00
Author                          : Redaktion ZAHLENBILDER
Creator                         : PScript5.dll Version 5.2.2
Producer                        : Acrobat Distiller 8.1.0 (Windows)
Modify Date                     : 2008:04:02 11:50:23+02:00
Title                           : 878 460: China – Städte als Magnet
Keywords                        : -äöü--ÄÖÜ--ß-éèê-
root@lamp:~# exiftool -keywords+="-äöü--ÄÖÜ--ß-éèê-" ./test.pdf
    1 image files updated
root@lamp:~# exiftool test.pdf
ExifTool Version Number         : 8.15
File Name                       : test.pdf
Directory                       : .
File Size                       : 119 kB
File Modification Date/Time     : 2011:07:01 07:42:39+02:00
File Permissions                : rw-r--r--
File Type                       : PDF
MIME Type                       : application/pdf
PDF Version                     : 1.6
XMP Toolkit                     : Adobe XMP Core 4.0-c316 44.253921, Sun Oct 01 2006 17:14:39
Metadata Date                   : 2008:04:02 11:50:23+02:00
Creator Tool                    : PScript5.dll Version 5.2.2
Format                          : application/pdf
Document ID                     : uuid:6ca5a98b-099a-4fea-82a8-bfe576e8c5cd
Instance ID                     : uuid:f070fb76-055a-4bce-80bc-67d511c4b7d5
Page Count                      : 1
Create Date                     : 2008:03:27 14:09:51+01:00
Author                          : Redaktion ZAHLENBILDER
Creator                         : PScript5.dll Version 5.2.2
Producer                        : Acrobat Distiller 8.1.0 (Windows)
Modify Date                     : 2008:04:02 11:50:23+02:00
Title                           : 878 460: China – Städte als Magnet
Keywords                        : -äöü--×ÌÜ--Ã�-éèê-, þÿ
root@lamp:~#


So, if there are keywords in a pdf, and one would like to add some, currently one would have to read the existing ones with exiftool, concatenate the existing ones and the additional ones, and then write them back in one go.  Correct?  Or is there another way?  ???

Cheers,
Rudy


Phil Harvey

#3
Hi Rudy,

Yes, adding PDF keywords is a problem too.

This will be fixed in 8.61 when it is released, but until then a work-around for adding PDF keywords could be:

exiftool '-pdf:keywords<$pdf:keywords, -äöü--ÄÖÜ--ß-éèê-' test.pdf

This should give the desired result, but an extra read phase is required when copying tags so the performance will be impacted.  Unfortunately there is no easy work-around like this when deleting individual keywords with -=, but this will be fixed in the next release.

Thanks again for pointing out this bug.

- 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 ($).