如何在 Java 中减小图像大小

如何在 Java 中减小图像大小

此图像大小缩减器 提供企业级压缩技术来压缩 图像。事实上,您可以使用这个功能丰富的库提供的各种压缩类型和级别,根据您的业务需求自定义 API 调用。因此,让我们在我们的 Java 项目中设置这个库,并构建一个在线图像压缩器。本教程将教我们如何以编程方式在 Java 中减小图像大小。

将涵盖以下几点:

图像尺寸缩减库安装

当涉及到快速应用程序开发时,任何库的安装都很重要。无论如何,您可以下载 JAR 文件或使用以下 Maven 配置安装此库。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-imaging</artifactId>
    <version>20.12</version>
    <classifier>jdk16</classifier>
</dependency>

以编程方式减小 PNG 图像大小

这个库提供了大量的方法,你可以在 这里 找到。此外,您可以通过编程方式设置图像的颜色、压缩类型和许多其他属性。

请按照以下步骤和代码片段压缩 PNG 图像:

  1. 通过调用 Image.load 方法加载源 PNG 图像文件。
  2. 循环可能的 CompressionLevel 范围。
  3. 为每个生成的 PNG 创建一个 PngOptions 类的实例以访问 PNG 选项。
  4. 设置压缩级别。而 png 图像压缩级别在 0-9 范围内,其中 9 是最大压缩,0 是存储模式。
  5. 通过调用 save 方法将结果保存在磁盘上。

将以下代码复制并粘贴到您的主文件中:

// 通过调用 Image.load 方法加载源 PNG 图像文件。  
Image image = Image.load(  "output.png");
// 循环可能的 CompressionLevel 范围
for (int i = 0; i <= 9; i++) {
    // 为每个生成的 PNG 创建一个 PngOptions 实例以访问 PNG 选项。
    PngOptions options = new PngOptions();
    // 设置压缩级别。而 png 图像压缩级别在 0-9 范围内,其中 9 是最大压缩,0 是存储模式。 
    options.setCompressionLevel(i);
    // 通过调用 save 方法将结果保存在磁盘上。 
    image.save("CompressingFiles_out" + i + ".png", options);
}

在 Java 中压缩 TIFF 图像

同样,这个库允许您构建一个在线图像压缩器,您可以在其中使用几行 Java 代码来减小 TIFF 图像文件的大小。

您可以按照以下步骤操作:

  1. 调用 image.load 方法通过文件路径位置或流加载图像。
  2. 为结果图像创建一个 TiffOptions 实例。
  3. 通过调用 setBitsPerSample 方法设置 BitsPerSample、光度模式和压缩模式。
  4. 调用 setCompression 方法设置压缩。
  5. 调用 setPhotometric 方法来设置光度。
  6. 通过调用 setPalette 方法设置灰度调色板。
  7. Save 输出。
// 调用 image.load 方法通过文件路径位置或流加载图像。  
try (Image image = Image.load(  "sample.tiff"))
{
    // 为结果图像创建一个 TiffOptions 实例。 
    TiffOptions outputSettings = new TiffOptions(TiffExpectedFormat.Default);
    // 通过调用 setBitsPerSample 方法设置 BitsPerSample、光度模式和压缩模式。
    outputSettings.setBitsPerSample(new int[] { 4 });
    // 调用 setCompression 方法来设置压缩。 
    outputSettings.setCompression(TiffCompressions.AdobeDeflate);
    // 调用 setPhotometric 方法来设置光度。 
    outputSettings.setPhotometric(TiffPhotometrics.Palette);
    // 通过调用 setPalette 方法设置灰度调色板。 
    outputSettings.setPalette(ColorPaletteHelper.create4BitGrayscale(false));
    // 保存输出。 
    image.save(  "out_adobedeflate.tiff", outputSettings);
}

您可以在下图中看到输出:

压缩 TIFF 图像

获得免费许可证

您可以使用 免费临时许可证 来试用 API,而不受评估限制。

加起来

这将我们带到本教程的结尾。您已经学习了如何在 Java 中减小图像大小以及其他一些重要主题。此外,您还了解了如何以编程方式压缩 TIFF 图像和减小 PNG 图像大小。这篇博文将真正帮助您使用几行源代码构建一个在线图像压缩器。最后,如果您要为您的业务应用程序构建图像大小缩减器,请不要跳过 文档

此外,我们建议您遵循我们的 入门指南

最后,conholdate.com 正在撰写新的博文。因此,请保持联系以获取定期更新。

问一个问题

您可以在我们的 论坛 上告诉我们您的问题或疑问。

常见问题

如何在编码中调整图像大小?

安装此 Java 图像处理 以编程方式调整图像大小。它提供了使用 Java 中的几行源代码来操作图像的方法。

也可以看看