[ 
https://issues.apache.org/jira/browse/IMAGING-319?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17836844#comment-17836844
 ] 

Bruno P. Kinoshita commented on IMAGING-319:
--------------------------------------------

Hi [~yangsicheng] , your code and instructions were very clear, thank you very 
much.

I followed the instructions (updated code example with `noformat` for JIRA) and 
then used `exiftool` + `diff`:
{noformat}
kinow@ranma:~/Desktop$ diff <(exiftool --dump iPhone12-geotag.JPG) <(exiftool 
editted-iPhone12-geotag.JPG)
2c2
< File Name                       : iPhone12-geotag.JPG
---
> File Name                       : editted-iPhone12-geotag.JPG
5,7c5,7
< File Modification Date/Time     : 2024:04:13 19:45:28+02:00
< File Access Date/Time           : 2024:04:13 19:46:21+02:00
< File Inode Change Date/Time     : 2024:04:13 19:45:28+02:00
---
> File Modification Date/Time     : 2024:04:13 19:57:02+02:00
> File Access Date/Time           : 2024:04:13 19:57:02+02:00
> File Inode Change Date/Time     : 2024:04:13 19:57:02+02:00
77c77
< Thumbnail Offset                : 2642
---
> Thumbnail Offset                : 2192 {noformat}
So the offset field is really incorrect (as pointed in earlier comments). I'm 
slowly trying to understand what's happening here, while reviewing the PR 
[https://github.com/apache/commons-imaging/pull/359] too.

> updateExifMetadataLossless lost the first character of a String
> ---------------------------------------------------------------
>
>                 Key: IMAGING-319
>                 URL: https://issues.apache.org/jira/browse/IMAGING-319
>             Project: Commons Imaging
>          Issue Type: Bug
>          Components: Format: JPEG
>    Affects Versions: 1.0-alpha2
>            Reporter: Sicheng Yang
>            Assignee: Bruno P. Kinoshita
>            Priority: Major
>         Attachments: Screen Shot 2021-11-26 at 4.01.06 PM-1.png, Screen Shot 
> 2021-11-26 at 4.01.21 PM-1.png, iPhone12-geotag.JPG
>
>          Time Spent: 40m
>  Remaining Estimate: 0h
>
> I try to use TiffOutputSet to generate a new image. However, if a tag that 
> contains String, the program may miss the first character of the String.
> {noformat}
> package org.apache.commons.imaging;
> import org.apache.commons.imaging.common.ImageMetadata;
> import org.apache.commons.imaging.formats.jpeg.JpegImageMetadata;
> import org.apache.commons.imaging.formats.jpeg.exif.ExifRewriter;
> import org.apache.commons.imaging.formats.tiff.TiffImageMetadata;
> import org.apache.commons.imaging.formats.tiff.write.TiffOutputSet;
> import java.io.BufferedOutputStream;
> import java.io.File;
> import java.io.FileOutputStream;
> import java.io.IOException;
> public class LibraryTest {
>     public static void main(String[] args) throws ImagingException, 
> IOException {
>         File source = new File("/home/kinow/Desktop/iPhone12-geotag.JPG");
>         File result = new 
> File("/home/kinow/Desktop/editted-iPhone12-geotag.JPG");
>         final ImageMetadata metadata = Imaging.getMetadata(source);
>         final JpegImageMetadata jpegMetadata = (JpegImageMetadata) metadata;
>         final TiffImageMetadata exif = jpegMetadata.getExif();
>         TiffOutputSet outputSet = exif.getOutputSet();
>         BufferedOutputStream bufferedOutputStream = new 
> BufferedOutputStream(new FileOutputStream(result));
>         new ExifRewriter().updateExifMetadataLossless(source, 
> bufferedOutputStream, outputSet);
>     }
> }{noformat}
> This is the sample code.
> Tag value in original image
> !image-2021-11-26-16-01-58-645.png!
> Tag value in output image
> !image-2021-11-26-16-04-12-185.png!



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to