خوشحالیم که انتشار GroupDocs.Conversion for Java v26.9 را اعلام می‌کنیم. این نسخه منتشر شده در سپتامبر 2026، لغو تعاونی برای تبدیل اسناد را معرفی می‌کند، تبدیل‌های بین فرمت‌های جریان فشرده را اضافه می‌کند و یک نام ماژول ثابت برای جاوا فراهم می‌سازد. همچنین جفت‌های تبدیل آرشیو اعلام‌شده به‌روز شده‌اند، بنابراین برنامه‌هایی که به‌صورت پویا تبدیل‌ها را انتخاب می‌کنند، باید قبل از ارتقا جفت‌های موجود را بررسی کنند.

چه چیزهای جدید در این نسخه

کلید دسته‌بندی تغییر
CONVERSIONNET-6880 Feature پشتیبانی از لغو تعاونی از طریق توکن‌های لغو
CONVERSIONNET-7032 Feature تبدیل Bzip2، Gzip، XZ و Unix Z به LZMA
CONVERSIONNET-7019 Feature تبدیل LZMA به Bzip2 و Gzip
CONVERSIONNET-7020 Feature تبدیل Unix Z به Bzip2 و Gzip
CONVERSIONNET-7030 Feature تبدیل Bzip2، Gzip، LZMA و Unix Z به XZ
CONVERSIONNET-7029 Feature تبدیل XZ به Bzip2 و Gzip
CONVERSIONNET-7028 Feature تبدیل Gzip به Bzip2
CONVERSIONNET-7021 Feature تبدیل Bzip2 به Gzip
CONVERSIONJAVA-3238 Task رفع مشکلات تأیید بسته در groupdocs-conversion-26.7.jar

فایل JAR این نسخه همچنین Automatic-Module-Name: com.groupdocs.conversion را برای برنامه‌هایی که از سیستم ماژول جاوا استفاده می‌کنند، اعلام می‌کند.

تغییرات API عمومی

لغو تعاونی

دو کلاس جدید، com.groupdocs.conversion.CancellationToken و com.groupdocs.conversion.CancellationTokenSource، به برنامه اجازه می‌دهند درخواست توقف یک تبدیل را بدهند. تمام متدهای عمومی Converter.convert(...) و Converter.convertPageByPage(...) اکنون بارگذاری‌های با پارامتر نهایی CancellationToken دارند. اجراگر تبدیل زنجیره‌ای نیز ConversionExecutor.convert(CancellationToken) را اضافه می‌کند.

بارگذاری‌های موجود همچنان در دسترس هستند و از CancellationToken.NONE استفاده می‌کنند، بنابراین فراخوانی‌های تبدیل موجود نیازی به تغییر ندارند.

یک منبع توکن ایجاد کنید و توکن آن را به تبدیل پاس دهید:

import com.groupdocs.conversion.CancellationTokenSource;
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;
import java.util.concurrent.CancellationException;

CancellationTokenSource cancellationSource = new CancellationTokenSource();

try (Converter converter = new Converter("input.docx")) {
    // یک هندلر لغو برنامه می‌تواند از نخ دیگر cancellationSource.cancel() را فراخوانی کند
    // در حالی که این تبدیل در حال اجراست.
    converter.convert(
        "converted.pdf",
        new PdfConvertOptions(),
        cancellationSource.getToken()
    );
} catch (CancellationException ex) {
    System.out.println("Conversion was cancelled.");
}

زمانی که کاربر یک کار را لغو می‌کند یا برنامه تصمیم به توقف آن می‌گیرد، cancellationSource.cancel() را فراخوانی کنید. لغو بین عملیات‌های تبدیل بررسی می‌شود: عملیاتی که در حال اجراست قبل از مشاهده لغو به پایان می‌رسد. سپس تبدیل java.util.concurrent.CancellationException را پرتاب می‌کند.

خروجی که تا کنون نوشته شده بازگردانده نمی‌شود، بنابراین برنامه‌ها باید هنگام لغو یک کار، خروجی جزئی را مدیریت کنند. منبع لغو شده نمی‌تواند بازنشانی شود؛ برای کار جدید یک منبع جدید ایجاد کنید. پاس دادن توکن null باعث پرتاب NullPointerException می‌شود.

تبدیل‌های جریان فشرده

نسخه 26.9 از منابع و مقصدهای جریان فشرده زیر پشتیبانی می‌کند، از جمله تبدیل با همان فرمت:

جهت فرمت‌های پشتیبانی‌شده
منبع Bzip2 (Bz2)، Gzip (Gz و Gzip)، LZMA (Lzma)، XZ (Xz)، Unix Z (Z)
مقصد Bzip2، Gzip، LZMA، XZ

Unix Z به عنوان منبع پشتیبانی می‌شود، اما در این نسخه به عنوان مقصد پشتیبانی نمی‌شود.

از CompressionConvertOptions.setFormat(...) برای انتخاب فرمت خروجی استفاده کنید. به عنوان مثال، یک جریان Gzip را به LZMA تبدیل کنید:

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.Lzma);

try (Converter converter = new Converter("input.gz")) {
    converter.convert("converted.lzma", options);
}

سازگاری تبدیل آرشیو

جفت‌های تبدیل آرشیو اعلام‌شده اکنون به تبدیل‌های درون ZIP، 7z، TAR و CPIO محدود شده‌اند. برنامه‌هایی که به جفت‌های تبدیل آرشیو به جریان فشرده قبلاً اعلام‌شده وابسته بودند، باید قبل از ارتقا، تبدیل‌های موجود را بررسی کنند. فرمت‌های منبع و مقصد جریان فشرده که در بالا فهرست شده‌اند، یک گروه جداگانه از تبدیل‌های پشتیبانی‌شده را توصیف می‌کنند.

نام ماژول ثابت جاوا

فایل JAR این نسخه ورودی زیر را در مانفیست اعلام می‌کند:

Automatic-Module-Name: com.groupdocs.conversion

این به برنامه‌هایی که از سیستم ماژول جاوا استفاده می‌کنند، یک نام ماژول ثابت می‌دهد. یک برنامه ماژولار می‌تواند در module-info.java به آن ارجاع دهد:

module example.conversion {
    requires com.groupdocs.conversion;
}

چگونه به‌روزرسانی را دریافت کنیم

Maven

مخزن GroupDocs و وابستگی 26.9 را به pom.xml خود اضافه کنید، یا نسخه را در وابستگی موجود به‌روزرسانی کنید:

<repositories>
    <repository>
        <id>groupdocs-artifacts-repository</id>
        <url>https://repository.groupdocs.com/repo/</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-conversion</artifactId>
        <version>26.9</version>
    </dependency>
</dependencies>

همچنین می‌توانید مخزن Maven GroupDocs.Conversion for Java را مرور کنید.

دانلود مستقیم

بسته جاوا را از صفحه GroupDocs.Conversion for Java releases دانلود کنید.

منابع