exif() returns every EXIF tag in the file (closes #156) #159

Merged
clawbot merged 2 commits from issue-156-exif-all-tags into next 2026-10-02 05:30:05 +02:00
2 Commits
Author SHA1 Message Date
sneak b13018306c Test the GPS hemisphere rules readPhotoExif applies
check / check (push) Waiting to run
Two readPhotoExif tests on hand-built GPS IFDs: a GPSLatitude with
GPSLatitudeRef "S" gives a negative gpsLatitude, and a GPSLatitude and
GPSLongitude without their reference tags give neither field.

Model: opus-5-5
2026-10-02 03:18:20 +00:00
clawbot 6dd22bcb73 exif() returns every EXIF tag in the file (closes #156)
check / check (push) Waiting to run
`photo.exif()` returns `ExifTags`: every EXIF tag exifreader reads from the file, keyed by tag name, each with exifreader's `id`, `value`, `description` and `computed`. The embedded thumbnail's tags are under `Thumbnail`, without the thumbnail image. A file with no EXIF, or a video, gives `{}`.

The thirteen typed methods stay. Each picks its field from the tags `exif()` returns through `readPhotoExif`, which now takes the tags instead of the bytes. GPS latitude and longitude are worked out from their tags and reference tags, since exifreader's computed position is not among the tags.

Also closes #148.

Model: opus-5-5
2026-10-02 02:25:28 +00:00