add most useful exif data to metadata

This commit is contained in:
fredrsf 2020-08-04 12:24:15 +03:00
parent af781a34dd
commit 856fb7405c
5 changed files with 542 additions and 70 deletions

16
vips.go
View file

@ -215,26 +215,18 @@ func VipsIsTypeSupportedSave(t ImageType) bool {
return false
}
func vipsExifMake(image *C.VipsImage) string {
return vipsExifShort(C.GoString(C.vips_exif_make(image)))
func vipsExifStringTag(image *C.VipsImage, tag string) string {
return vipsExifShort(C.GoString(C.vips_exif_tag(image, C.CString(tag))))
}
func vipsExifModel(image *C.VipsImage) string {
return vipsExifShort(C.GoString(C.vips_exif_model(image)))
func vipsExifIntTag(image *C.VipsImage, tag string) int {
return int(C.vips_exif_tag_to_int(image, C.CString(tag)))
}
func vipsExifOrientation(image *C.VipsImage) int {
return int(C.vips_exif_orientation(image))
}
func vipsExifSoftware(image *C.VipsImage) string {
return vipsExifShort(C.GoString(C.vips_exif_software(image)))
}
func vipsExifDatetime(image *C.VipsImage) string {
return vipsExifShort(C.GoString(C.vips_exif_datetime(image)))
}
func vipsExifShort(s string) string {
if strings.Contains(s, " (") {
return s[:strings.Index(s, "(")-1]