Мы рады объявить о выпуске GroupDocs.Redaction for Java 25.12, доступном с декабря 2025 года. Это точечное обновление устраняет одну проблему, которая затрагивала обработку файлов PowerPoint Template Macro‑enabled (POTM) после редактирования.
Что нового в этом выпуске
| ID проблемы | Описание | Категория |
|---|---|---|
| REDACTIONJAVA-246 | Не удаётся открыть файл POTM после редактирования | Исправление |
Подробности исправления
Когда презентация загружалась из потока, редактировалась и затем сохранялась, вывод неверно конвертировался в формат PPTX независимо от исходного типа файла. Исправление гарантирует, что редактированный файл сохраняет исходный POTM формат.
Пример кода (исправленное поведение)
import com.groupdocs.redaction.Redactor;
import com.groupdocs.redaction.redactions.ExactPhraseRedaction;
import com.groupdocs.redaction.redactions.ReplacementOptions;
import com.groupdocs.redaction.options.RasterizationOptions;
import java.io.InputStream;
import java.io.OutputStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
public class RedactPotm {
public static void main(String[] args) throws Exception {
// Define input and output file paths
Path inputPath = Paths.get("source.potm");
Path outputPath = Paths.get("redacted.potm");
// Open input stream, create redactor, and prepare output stream
// All resources are automatically closed when exiting the try block
try (final InputStream inputStream = Files.newInputStream(inputPath);
final Redactor redactor = new Redactor(inputStream);
final OutputStream outputStream = Files.newOutputStream(outputPath)) {
// Configure redaction: define text to redact and replacement string
String textToRedact = "TEXT";
String redactWith = "****";
// Create replacement options and exact phrase redaction
ReplacementOptions textReplacement = new ReplacementOptions(redactWith);
ExactPhraseRedaction textRedaction = new ExactPhraseRedaction(textToRedact, textReplacement);
// Apply the redaction to the document
redactor.apply(textRedaction);
// Configure rasterization options (disable rasterization for presentations)
RasterizationOptions rasterizationOptions = new RasterizationOptions();
rasterizationOptions.setEnabled(false);
// Save the redacted presentation
// Fixed: Now preserves the original POTM format instead of converting to PPTX
redactor.save(outputStream, rasterizationOptions);
}
}
}
Пример демонстрирует исправленный рабочий процесс: загрузку файла POTM из потока, применение простой текстовой редактуры и сохранение результата обратно в POTM без нежелательного преобразования формата.
Как получить обновление
Обновите версию зависимости в файле pom.xml:
<dependencies>
<dependency>
<groupId>com.groupdocs</groupId>
<artifactId>groupdocs-redaction</artifactId>
<version>25.12</version>
</dependency>
</dependencies>
Или скачайте пакет напрямую из нашего Maven‑репозитория:
https://releases.groupdocs.com/java/repo/com/groupdocs/groupdocs-redaction/25.12/
Дополнительные ресурсы
Обратная связь
Мы ценим ваш отзыв! Если у вас есть вопросы, возникли проблемы или есть предложения, пожалуйста, посетите наш Бесплатный форум поддержки. Наша команда готова помочь.