Copie metadatos EXIF ​​de TIF a JPEG en C # / VB.NET

votos
1

Realmente apreciaría si pudieras arrojar luz sobre este problema. Tengo 2 imágenes, una fue creada a partir de un archivo TIF con metadatos, la otra es una imagen en memoria que se guardará como jpeg. Luego utilizo esta rutina para transferir metadatos exif de la primera imagen a la segunda (que es desde la creada desde el archivo tif a la imagen en memoria):

For Each _p In image1.PropertyItems
   image2.SetPropertyItem(_p)
Next

Y esto funciona perfectamente bien. Todos los elementos exif se copian con éxito. Confirmé esto mediante el uso de relojes en modo de depuración. El problema surge cuando guarda image2 como jpeg usando esto:

    Dim eps As EncoderParameters = New EncoderParameters(1)
    eps.Param(0) = New EncoderParameter(Encoder.Quality, 85)
    Dim ici As ImageCodecInfo = GetEncoderInfo(image/jpeg)
    image2.Save(C:\1.jpg, ici, eps)

Sin embargo, solo se guardan muy pocas propiedades EXIF ​​con el archivo image2 jpeg, es decir, solo el modelo de cámara y el fabricante de la cámara. Sin embargo, si guardo image2 como TIF, todas las propiedades del tif original estarán allí. ¿Alguien puede explicar por qué es eso?

Gracias.

Publicado el 02/07/2009 a las 11:38
fuente por usuario
En otros idiomas...                            


1 respuestas

votos
0

Eche un vistazo a Exiv2Sharp : este envoltorio alrededor de Exiv2 debería proporcionarle lo que está buscando.

Respondida el 02/07/2009 a las 12:06
fuente por usuario

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more