Modify EXIF DateTimeOriginal and DateTimeDigitized lossless
Find a file
2026-01-19 16:22:12 +01:00
.idea Initial commit 2025-08-23 08:48:59 +02:00
gradle/wrapper Initial commit 2025-08-23 08:48:59 +02:00
src/main/java/org/purejava/exif Initial commit 2025-08-23 08:48:59 +02:00
.gitignore Initial commit 2025-08-23 08:48:59 +02:00
build.gradle.kts Initial commit 2025-08-23 08:48:59 +02:00
exif-time-shift.png Initial commit 2025-08-23 08:48:59 +02:00
exif-time-shift.svg Initial commit 2025-08-23 08:48:59 +02:00
gradlew Initial commit 2025-08-23 08:48:59 +02:00
gradlew.bat Initial commit 2025-08-23 08:48:59 +02:00
LICENSE Initial commit 2025-08-23 08:48:59 +02:00
README.md Initial commit 2025-08-23 08:48:59 +02:00
settings.gradle.kts Initial commit 2025-08-23 08:48:59 +02:00

EXIF Time Shift (JavaFX, Java 24)

exif-time-shift

A desktop app to scan a directory of photos, check the Device/Camera Model, the photos were taken with, and apply a time offset to EXIF DateTimeOriginal and DateTimeDigitized for the selected Device/Camera Model using Apache Commons Imaging (lossless where possible).

Imagine, you and your friend take photos with two cameras. One has a faulty local time set. This allows to select all photos taken with this camera and to correct the time stamps.

Requirements

  • Java 24 (toolchain in Gradle)
  • Gradle 8+
  • JavaFX

Run

Mac + Linux

./gradlew run

Windows

gradlew.bat run

Notes

  • Only JPEG/TIFF EXIF is modified. Other formats are skipped.
  • We write updates losslessly into a temp file and then replace the original.
  • A .bak backup of the original file is created next to it.

Copyright (C) 2025 Ralph Plawetzki

The Camera SVG Vector logo is made by Solar Icons and is published under the CC Attribution License (CC BY 4.0 Deed)