Як стиснути PNG у Java

Ця тема присвячена тому, як стиснути PNG у Java. Він містить усі необхідні ресурси, класи, методи та робочий приклад коду для стиснення PNG за допомогою Java. Створену програму можна використовувати в будь-якому середовищі, сумісному з Java, у Windows, macOS або Linux.

Кроки для стиснення PNG за допомогою Java

  1. Налаштуйте середовище, додавши Aspose.Imaging for Java за допомогою менеджера сховища
  2. Завантажте вихідний файл зображення PNG за допомогою екземпляра класу Image
  3. Використовуйте екземпляр класу PngOptions, щоб установити ступінь стиснення разом з іншими властивостями
  4. Збережіть стислий файл PNG на диску

Дотримуючись вищезазначених кроків, ви можете легко керувати стисненням PNG у Java за допомогою покрокового підходу, згідно з яким ми спочатку налаштовуємо середовище, включаючи необхідні ресурси в проект. Потім ми отримаємо доступ до вихідного PNG-зображення з диска за допомогою екземпляра класу Image, за яким слідує екземпляр класу PngOptions для налаштування коефіцієнта стиснення разом з іншими пов’язаними властивостями. Нарешті, стиснене зображення PNG буде збережено на диску відповідно до налаштувань Pngoptions.

Код для стиснення PNG за допомогою Java

import com.aspose.imaging.ColorPaletteHelper;
import com.aspose.imaging.Image;
import com.aspose.imaging.ImageOptionsBase;
import com.aspose.imaging.License;
import com.aspose.imaging.RasterImage;
import com.aspose.imaging.fileformats.png.PngColorType;
import com.aspose.imaging.imageoptions.PngOptions;
public class CompressPNG {
public static void main (String[] args) {
String path = "/Users/Documents/KnowledgeBase/TestData/";
// Applying product license to Compress a PNG image in Java
License pngCompressionLicense = new License();
pngCompressionLicense.setLicense(path + "Conholdate.Total.Product.Family.lic");
String inputPngFile = path+"Sample.png";
String outputPngFile = path+"compressed_image.png";
Image image = Image.load(path + "sample.png");
Image pngImage = Image.load(inputPngFile);
PngOptions options = new PngOptions();
// Set the compression level
options.setCompressionLevel(9);
options.setProgressive(true);
//Set the colour type
options.setColorType(PngColorType.IndexedColor);
options.setPalette(ColorPaletteHelper.getCloseImagePalette((RasterImage)pngImage, 1 << 5));
pngImage.save(outputPngFile,options);
}
}

Цей приклад коду можна використовувати для стиснення файлу PNG у Java за допомогою дуже простих викликів API. Клас Image складається з кількох функцій перевантаження, які можна використовувати для завантаження зображень із потоку в поєднанні з додатковими параметрами LoadOptions для підтримки інших типів зображень. Клас PngOptions надає методи для встановлення таких властивостей, як тип кольору, коефіцієнт стиснення, параметри векторної растеризації тощо.

У цій темі ми дізналися, як досягти стиснення PNG за допомогою Java. Якщо вам цікаво дізнатися про перетворення PNG на ICON, зверніться до статті як конвертувати PNG у ICON у Java.

 Українська