Dear GroupDocs users, we’re pleased to announce GroupDocs.Metadata for Java 26.7. This release adds PDF/A and PDF/X format detection, introduces a supported-file-type feature matrix, and fixes HTML-body loss when saving MSG files together with OOXML compliance preservation. The changes are backward compatible — existing code continues to work unchanged, and the new APIs are additive (new enum, new methods, and a new helper class).
Feature — detect PDF/A and PDF/X conformance
PDF file types now report the detected PDF standard. PdfTypePackage exposes getPdfFormat() together with the convenience checks isPdfA() and isPdfX().
import com.groupdocs.metadata.Metadata;
import com.groupdocs.metadata.core.PdfRootPackage;
try (Metadata metadata = new Metadata("document.pdf")) {
PdfRootPackage root = metadata.getRootPackage();
if (root.getPdfType().isPdfA()) {
// e.g. PdfA2B, PdfA3U, PdfA4, ...
System.out.println("PDF/A detected: " + root.getPdfType().getPdfFormat());
}
}
Scope.
- A new
PdfFormatenum covers PDF/A (1a…4f), PDF/X (1a…4), standard versions PDF 1.0–2.0, PDF/UA-1, ZUGFeRD, andUnknown. - The value is resolved from the underlying
Aspose.Pdf.PdfFormatwhen the file format is loaded — no extra parsing on your side. - Backward compatible —
getPdfFormat(),isPdfA(), andisPdfX()are additive; no existing signatures changed. (METADATANET-4171)
Feature — query supported features per file type
A new FileTypeFeatureSupport API reports which product features (AutoDetection, Read, Edit, Remove) are supported for a given file type, grouped into a FormatFamily.
import com.groupdocs.metadata.core.FileType;
import com.groupdocs.metadata.core.FeatureSupport;
import com.groupdocs.metadata.core.FileTypeFeatureSupport;
FileTypeFeatureSupport support = FileTypeFeatureSupport.getSupportedFileTypeFeatures(FileType.PDF);
System.out.println(support.getFormatFamily()); // Pdf
for (FeatureSupport feature : support.getFeatures()) {
System.out.println(feature.getFeature() + ": " + feature.getLevel());
}
Scope.
- Resolve a single entry by
FileTypeor by extension, or enumerate the whole matrix via the no-argumentgetSupportedFileTypeFeatures(). - Supporting types added:
FeatureSupport,FormatFamily,ProductFeature,SupportLevel,SupportDetail. - The matrix reflects the formats actually available in the Java distribution. (METADATANET-4215)
Fix — MSG HTML body preserved when saving
Saving an MSG file no longer risks discarding the HTML body. Saving is now routed through a dedicated MsgWrapper.save(...) invoked from MsgRootPackage.commitChanges, and a regression test covers the load → save round-trip.
Scope.
- No public API changes —
Metadata,MsgRootPackage, and save calls are used exactly as before for.msgfiles. - Symptom that is resolved. Re-saving an MSG message could drop its HTML body; the message body is now retained after save. (METADATANET-4213)
Fix — OOXML compliance preserved on save
When saving WordProcessing documents, the original OOXML compliance level is now detected from the loaded document and reapplied to the save options for both encrypted and plain saves.
Scope.
- No public API changes — the same save calls are used for
.docx,.docm,.dotx,.dotm, and FlatOpc documents. - Symptom that is resolved. Re-saved OOXML documents could lose their original compliance level; the compliance level is now carried over.
This release also includes smaller fixes: safer image-size error reporting, a OneNote page-title null guard, a slide-preview page-index fix, and additional test coverage.
Resources