Re: [Gimp-developer] jpeg-exif continued

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Me:
>> (Raphael's plan has them implemented as plug-ins, but I think that's too awkward.)

Sven:
> What is akward about it? 

Passing, say, an ExifData struct to a plug-in is awkward.  Calling a function
and giving it a pointer is simpler, and much faster too.  And then there's
all the extra baggage of registering a plug-in etc.

Sven:
> The JPEG plug-in would have to change the orientation tag if it's
> rotating the image on load, wouldn't it? It would have to do that
> before calling gimp_metadata_store_exif().

It can do that if it wants to, but there is no requirement.  The
orientation needs to be set to "top-left" when an image is saved,
but it doesn't really matter whether the change is made upon loading
or upon saving.  If nothing else, doing it on saving prevents the
user from setting things incorrectly in the metadata editor.

Me:
> gimp_metadata_store_exif() serializes the exif data and attaches it to
> the image as an "exif-data" parasite.
>
> gimp_metadata_generate_exif() extracts the contents of the "exif-data"
> parasite and deserializes them. 

Sven:
> Excuse my ignorance, but why do you need to serialize the data? What
> does serializing mean here anyway? 

What I was trying to say, rather awkwardly, is that the two functions are 
implemented to do exactly what the current code does.  By "serializing"
I meant calling the libexif function exif_data_set_data to turn an 
ExifData struct into a string of bytes that can be stored in a parasite
in a machine-independent way, and by "deserializing", turning the bytes
back into an ExifData struct.

  -- Bill
 

 
______________ ______________ ______________ ______________
Sent via the CNPRC Email system at primate.ucdavis.edu


 
                   

[Index of Archives]     [Video For Linux]     [Photo]     [Yosemite News]     [gtk]     [GIMP for Windows]     [KDE]     [GEGL]     [Gimp's Home]     [Gimp on GUI]     [Gimp on Windows]     [Steve's Art]

  Powered by Linux