Reading image metadata in Java is now possible thanks to Apache Tika support in JDeli. With the new release of JDeli 2023.03 which includes two plugins for Apache Tika.
You can download JDeli here to try for yourself.
Image metadata extraction
Using JDeli, you can read image metadata from a range of different formats.
We currently support the following:
To get started, we pass a TikaInputStream, along with a ContentHandler and Metadata objects, to the MetadataParser.
TikaInputStream tik = TikaInputStream.get(Paths.get("file.img")); MetadataParser parser = new MetadataParser(); ToXMLContentHandler xmlH = new ToXMLContentHandler(); Metadata metadata = new Metadata(); parser.parse(tik, xmlH, metadata, null);
The result is stored in the content handler as an HTML table where each column is a metadata attribute.
More information about image metadata extraction available on our support site.
Image format detection
Using an ImageDetector, you can detect an image’s MIME Type:
ImageDetector detector = new ImageDetector(); MediaType mimeType = detector.detect(TikaInputStream.get(Paths.get("file.img")), null);
You can then do MediaType.getSubtype() to find out the image format.
More information about image format detection available on our support site.
Get started today with our free JDeli trial, which has no Email requirement.
Start reading and writing images with one line of code
BufferedImage image = JDeli.read(streamOrFile);
JDeli.write(myBufferedImage, OutputFormat.HEIC, outputStreamOrFile)