You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Piotr Czajka <pt...@gmail.com> on 2013/01/14 08:55:13 UTC
[imaging] Special characters in edited exif tag
Hi,
I 'm using Imaging 1.0 snapshot version and when I add/update tag with
special characters string is not reads correctly
e.g.
--------- input------------- ------------------output ---------------
ARTIST:
aaaeeeccc aaaeeeccc
ok, but
--------- input------------- ------------------output ---------------
ARTIST:
aąaeęecćc aÄ…acćceÄ™e
USER COMMENT:
aąaeęecćc aąacćceęę
(correct)
IMAGE DESCROPTION:
aąaeęecćc aÄ…acćceÄ™e
COPYRIGHT:
aąaeęecćc aÄ…acćceÄ™e
in user comment string is reads correctly but in other tags isn't.
code:
//.....
TiffOutputDirectory exifIFD0Directory =
outputTiffSet.getOrCreateRootDirectory();
TiffOutputDirectory exifSubIFDDirectory =
outputTiffSet.getOrCreateExifDirectory();
switch(type)
{
case AUTHOR:
if(outputTiffSet.findField(TiffTagConstants.TIFF_TAG_ARTIST) != null)
{
exifIFD0Directory.removeField(TiffTagConstants.TIFF_TAG_ARTIST);
exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_ARTIST, text);
}
else
{
exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_ARTIST, text);
}
break;
case COMMENT:
if(outputTiffSet.findField(ExifTagConstants.EXIF_TAG_USER_COMMENT) != null)
{
exifSubIFDDirectory.removeField(ExifTagConstants.EXIF_TAG_USER_COMMENT);
exifSubIFDDirectory.add(ExifTagConstants.EXIF_TAG_USER_COMMENT, text);
}
else
{
exifSubIFDDirectory.add(ExifTagConstants.EXIF_TAG_USER_COMMENT, text);
}
break;
case IMAGE_DESRC:
if(outputTiffSet.findField(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION) !=
null)
{
exifIFD0Directory.removeField(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION);
exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION,
text);
}
else
{
exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION, text);
}
break;
case COPYRIGHT:
if(outputTiffSet.findField(TiffConstants.TIFF_TAG_COPYRIGHT) != null)
{
exifIFD0Directory.removeField(TiffConstants.TIFF_TAG_COPYRIGHT);
exifIFD0Directory.add(TiffConstants.TIFF_TAG_COPYRIGHT, text);
}
else
{
exifIFD0Directory.add(TiffConstants.TIFF_TAG_COPYRIGHT, text);
}
break;
}
//....
please help
Re: [imaging] Special characters in edited exif tag
Posted by Piotr Czajka <pt...@gmail.com>.
Uhm it's looks like Imaging reads correctly everything :) but other library
which I use to read tags has problem ... thanks for Imaging ! ;]
2013/1/14 Piotr Czajka <pt...@gmail.com>
> Hi,
> I 'm using Imaging 1.0 snapshot version and when I add/update tag with
> special characters string is not reads correctly
>
> e.g.
> --------- input------------- ------------------output ---------------
> ARTIST:
> aaaeeeccc aaaeeeccc
>
> ok, but
>
> --------- input------------- ------------------output ---------------
> ARTIST:
> aąaeęecćc aÄ…acćceÄ™e
>
> USER COMMENT:
> aąaeęecćc aąacćceęę
> (correct)
>
> IMAGE DESCROPTION:
> aąaeęecćc aÄ…acćceÄ™e
>
> COPYRIGHT:
> aąaeęecćc aÄ…acćceÄ™e
>
>
> in user comment string is reads correctly but in other tags isn't.
>
> code:
> //.....
> TiffOutputDirectory exifIFD0Directory =
> outputTiffSet.getOrCreateRootDirectory();
> TiffOutputDirectory exifSubIFDDirectory =
> outputTiffSet.getOrCreateExifDirectory();
>
> switch(type)
> {
> case AUTHOR:
>
> if(outputTiffSet.findField(TiffTagConstants.TIFF_TAG_ARTIST) != null)
> {
>
> exifIFD0Directory.removeField(TiffTagConstants.TIFF_TAG_ARTIST);
>
> exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_ARTIST, text);
> }
> else
> {
>
> exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_ARTIST, text);
> }
> break;
>
> case COMMENT:
>
> if(outputTiffSet.findField(ExifTagConstants.EXIF_TAG_USER_COMMENT) != null)
> {
>
> exifSubIFDDirectory.removeField(ExifTagConstants.EXIF_TAG_USER_COMMENT);
>
> exifSubIFDDirectory.add(ExifTagConstants.EXIF_TAG_USER_COMMENT, text);
>
> }
> else
> {
>
> exifSubIFDDirectory.add(ExifTagConstants.EXIF_TAG_USER_COMMENT, text);
> }
> break;
>
> case IMAGE_DESRC:
>
> if(outputTiffSet.findField(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION) !=
> null)
> {
>
> exifIFD0Directory.removeField(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION);
>
> exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION,
> text);
> }
> else
> {
>
> exifIFD0Directory.add(TiffTagConstants.TIFF_TAG_IMAGE_DESCRIPTION, text);
> }
> break;
>
> case COPYRIGHT:
>
> if(outputTiffSet.findField(TiffConstants.TIFF_TAG_COPYRIGHT) != null)
> {
>
> exifIFD0Directory.removeField(TiffConstants.TIFF_TAG_COPYRIGHT);
>
> exifIFD0Directory.add(TiffConstants.TIFF_TAG_COPYRIGHT, text);
> }
> else
> {
>
> exifIFD0Directory.add(TiffConstants.TIFF_TAG_COPYRIGHT, text);
> }
> break;
>
> }
> //....
>
> please help
>