/// <summary> /// Establece el valor de la propiedad EXIF de la imagen /// </summary> /// <param name="fichero">Ruta de la imagen</param> /// <param name="propertyType">Propiedad que se quiere modificar</param> /// <param name="value">Valor de la propiedad</param> /// <returns>Objeto imagen</returns> public static Bitmap SetPropiedadImage(string fichero, ImagePropertyIDTags propertyType, string value) { Bitmap bmp = null; try { bmp = new Bitmap(fichero); bmp = Images.SetPropiedadImage(bmp, propertyType, value); } catch (Exception ex) { } return(bmp); }
/// <summary> /// Obtiene la propiedad EXIF de la imagen /// </summary> /// <param name="fichero">Ruta de la imagen</param> /// <param name="propertyType">Propiedad que se quiere obtener</param> /// <returns>Valor de la propiedad</returns> public static string GetPropiedadImage(string fichero, ImagePropertyIDTags propertyType) { Bitmap bmp = null; string result = null; try { bmp = new Bitmap(fichero); result = Images.GetPropiedadImage(bmp, propertyType); } catch (Exception ex) { } return(result); }
/// <summary> /// Obtiene la propiedad EXIF de la imagen /// </summary> /// <param name="bmp">Objeto imagen</param> /// <param name="propertyType">Propiedad que se quiere obtener</param> /// <returns>Valor de la propiedad</returns> public static string GetPropiedadImage(Bitmap bmp, ImagePropertyIDTags propertyType) { string result = null; try { System.Drawing.Imaging.PropertyItem item = bmp.GetPropertyItem((int)propertyType); object value = Images.GetPropertyImageValue(item); if (value != null) { result = value.ToString(); } } catch (Exception ex) { // throw ex; } return(result); }
/// <summary> /// Establece el valor de la propiedad EXIF de la imagen /// </summary> /// <param name="bmp">Objeto imagen</param> /// <param name="propertyType">Propiedad que se quiere modificar</param> /// <param name="value">Valor de la propiedad</param> /// <returns>Objeto imagen</returns> public static Bitmap SetPropiedadImage(Bitmap bmp, ImagePropertyIDTags propertyType, String value) { System.Drawing.Imaging.PropertyItem item = null; try { item = bmp.GetPropertyItem((int)propertyType); } catch (Exception ex) { item = Images.createPropertyItem(); } switch (propertyType) { case ImagePropertyIDTags.GpsLongitude: case ImagePropertyIDTags.GpsLatitude: string[] values = value.Split(";".ToCharArray(), StringSplitOptions.RemoveEmptyEntries); item.Type = (short)PropertyTagType.SRational; item.Value = new byte[24]; item.Value[0] = Convert.ToByte(Convert.ToInt32(values[0])); item.Value[4] = 1; item.Value[8] = Convert.ToByte(Convert.ToInt32(values[1])); item.Value[12] = 1; item.Value[16] = Convert.ToByte(Convert.ToInt32(values[2])); item.Value[20] = 1; break; default: item.Type = (short)PropertyTagType.ASCII; item.Value = System.Text.Encoding.ASCII.GetBytes(value); break; } item.Id = (int)propertyType; item.Len = item.Value.Length; bmp.SetPropertyItem(item); return(bmp); }