Nous sommes heureux d’annoncer la sortie de GroupDocs.Conversion for Java 26.10, disponible depuis octobre 2026. Cette version introduit la prise en charge de la conversion d’archives ISO et UUE (uuencode), la conversion d’images HEIC via un connecteur de décodeur configurable, et la possibilité de supprimer les métadonnées de document intégrées et personnalisées lors de la conversion de documents WordProcessing, Spreadsheet, Presentation et PDF. Elle comprend également des améliorations de la détection du type de fichier, du dimensionnement des pages, de la préservation des marges, et corrige plusieurs bugs—y compris une régression critique de la version 26.9 où le premier appel à License.setLicense() a échoué.
Nouveautés de cette version
- [Feature] Convertir les archives ZIP, 7z, TAR et CPIO en ISO (CONVERSIONNET-7079)
- [Feature] Convertir les archives ISO en ZIP, 7z, TAR et CPIO (CONVERSIONNET-7078)
- [Feature] Convertir UUE en Bzip2, Gzip, Lzip, LZMA, XZ, Unix Z, Zstandard, UUE et les formats d’archive pris en charge (CONVERSIONNET-7154)
- [Feature] Convertir Bzip2, Gzip, LZMA, XZ, Unix Z et Zstandard en UUE (CONVERSIONNET-7155)
- [Feature] Prise en charge de la conversion d’images HEIC via un connecteur de décodeur (CONVERSIONNET-7140)
- [Enhancement] Améliorer la détection du type de fichier lorsque LoadOptions ne spécifient pas de format (CONVERSIONNET-7161)
- [Enhancement] Supprimer les métadonnées lors de la conversion de documents PDF (CONVERSIONNET-7131)
- [Enhancement] Supprimer les métadonnées lors de la conversion de documents Presentation (CONVERSIONNET-7130)
- [Enhancement] Supprimer les métadonnées lors de la conversion de documents Spreadsheet (CONVERSIONNET-7129)
- [Enhancement] Supprimer les métadonnées lors de la conversion de documents WordProcessing (CONVERSIONNET-7128)
- [Bug] Respecter le type de fichier spécifié dans LoadOptions lors de la conversion par nom de fichier (CONVERSIONNET-7089)
- [Bug] Corriger la conversion de diagramme en image sur macOS et Linux (CONVERSIONNET-7088)
- [Bug] Appliquer correctement la taille de page demandée (CONVERSIONNET-7080)
- [Bug] Inclure les colonnes MPP personnalisées dans la sortie de conversion (CONVERSIONNET-6905)
- [Bug] Corriger la conversion HTML vers RTF via PDF (CONVERSIONNET-6969)
- [Bug] Corriger l’extraction des fichiers texte natifs et convertis intégrés dans les documents Word (CONVERSIONNET-7138)
- [Bug] Corriger la récupération des informations du document PDF (CONVERSIONNET-7183)
- [Task] Implémenter des jetons d’annulation dans les opérations de conversion et les enregistreurs (CONVERSIONJAVA-3265)
- [Task] Rendre la conversion annulable (CONVERSIONJAVA-3266)
- [Bug] Corriger IllegalAccessError lors du premier appel à License.setLicense(), qui laissait la bibliothèque en mode évaluation (régression dans la version 26.9) (CONVERSIONJAVA-3300)
Modifications de l’API publique
Prise en charge de la conversion ISO et UUE
Utilisez CompressionConvertOptions.setFormat(...) avec CompressionFileType.Iso ou CompressionFileType.Uue.
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.filetypes.CompressionFileType;
import com.groupdocs.conversion.options.convert.CompressionConvertOptions;
CompressionConvertOptions options = new CompressionConvertOptions();
options.setFormat(CompressionFileType.Iso);
try (Converter converter = new Converter("input.zip")) {
converter.convert("converted.iso", options);
}
ISO prend en charge la conversion vers et depuis ZIP, 7z, TAR et CPIO, ainsi que la conversion ISO vers ISO.
UUE peut être converti en Bzip2, Gzip, Lzip, LZMA, XZ, Unix Z, Zstandard, UUE, ZIP, 7z, TAR, CPIO et ISO.
La conversion vers UUE est prise en charge depuis Bzip2, Gzip, LZMA, XZ, Unix Z et Zstandard. La conversion de Lzip vers UUE n’est pas prise en charge.
Prise en charge de la conversion HEIC
Configurez une implémentation de com.groupdocs.conversion.integration.heic.IHeicConnector en utilisant
RasterImageLoadOptions.setHeicConnector(...), et transmettez ces options de chargement à Converter lors du chargement d’une image HEIC.
Le connecteur fournit le décodeur HEIC ; une implémentation de décodeur est requise pour la conversion HEIC.
IHeicConnector.getBitmapInfo(InputStream) renvoie un bitmap décodé. Sa méthode par défaut
getDecodedBitmapInfo(InputStream) adapte ce bitmap à com.groupdocs.conversion.contracts.BitmapInfo.
Les connecteurs peuvent remplacer cette dernière méthode pour fournir directement les données de pixels décodées.
Suppression des métadonnées
WordProcessingLoadOptions, SpreadsheetLoadOptions, PresentationLoadOptions et PdfLoadOptions implémentent
IMetadataLoadOptions et exposent setClearBuiltInDocumentProperties(boolean) et
setClearCustomDocumentProperties(boolean), avec les getters correspondants. Les deux options sont false par défaut.
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import com.groupdocs.conversion.options.load.WordProcessingLoadOptions;
WordProcessingLoadOptions loadOptions = new WordProcessingLoadOptions();
loadOptions.setClearBuiltInDocumentProperties(true);
loadOptions.setClearCustomDocumentProperties(true);
try (Converter converter = new Converter("input.docx", () -> loadOptions)) {
converter.convert("converted.pdf", new PdfConvertOptions());
}
Marges de page nullables et valeurs par défaut des feuilles de calcul
Les getters de marge dans IPageMarginConvertOptions, PdfConvertOptions et WordProcessingConvertOptions renvoient désormais
Float au lieu de float. Les marges sont null par défaut, ce qui préserve les marges du document source le cas échéant.
Les setters acceptent des valeurs Float nullables ; les surcharges de setter primitive float restent disponibles.
Recompilez les applications contre la bibliothèque mise à jour. Le code qui désemballe le résultat d’un getter de marge doit gérer null.
Définissez des marges explicites pour conserver une mise en page à marge fixe.
SpreadsheetLoadOptions.getAllColumnsInOnePagePerSheet() et getSkipEmptyRowsAndColumns() sont désormais false par défaut.
Définissez-les explicitement à true si votre application nécessite toutes les colonnes sur une page ou l’omission des lignes et colonnes vides.
Options de chargement d’e‑mail
Les méthodes obsolètes EmailLoadOptions.getDisplayEmailAddress() et setDisplayEmailAddress(boolean) ont été supprimées.
Utilisez getDisplayFromEmailAddress() et setDisplayFromEmailAddress(boolean) à la place.
Détection du format des options de chargement
Les options de chargement couvrant plusieurs types de fichiers n’assignent plus de format par défaut. Lorsque Format n’est pas spécifié, le format source est détecté à partir de l’entrée. Un format explicitement spécifié est respecté lors du chargement par nom de fichier.
Nouvelles fonctionnalités
Cette version introduit de nouveaux formats, contrôles de métadonnées et corrections de conversion :
- Ajout de la conversion depuis et vers les archives ISO.
- Ajout de la conversion depuis et vers UUE (uuencode), avec les paires de formats listées ci-dessous.
- Ajout de la conversion d’images HEIC via un connecteur de décodeur configurable.
- Ajout d’options pour supprimer les propriétés de document intégrées et personnalisées lors de la conversion de documents WordProcessing, Spreadsheet, Presentation et PDF.
- Amélioration de la détection du type de fichier, du dimensionnement des pages et de la préservation des marges du document source.
- Correction de la conversion de diagramme en image sur macOS et Linux, des colonnes MPP personnalisées, de l’extraction de texte intégré et de la sélection de pages PDF.
- Correction d’une régression dans la version 26.9 où le premier appel à License.setLicense() levait IllegalAccessError et laissait la bibliothèque en mode évaluation.
Exemple de code
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.filetypes.CompressionFileType;
import com.groupdocs.conversion.options.convert.CompressionConvertOptions;
CompressionConvertOptions options = new CompressionConvertOptions();
options.setFormat(CompressionFileType.Iso);
try (Converter converter = new Converter("input.zip")) {
converter.convert("converted.iso", options);
}
Comment obtenir la mise à jour
Maven
Mettez à jour vers le dernier package GroupDocs.Conversion via Maven :
GroupDocs.Conversion for Java 26.10
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-conversion</artifactId>
<version>26.10</version>
</dependency>