使用 Java 图像调整器调整图像大小

图像编辑器 提供大小调整功能,可让您根据需要更改图像的大小。在 Java 应用程序中设计图像编辑器或处理图像时,您可能需要以编程方式调整图像大小。为此,本文介绍了如何在 Java 中调整图像大小。此外,您还将学习如何使用不同的调整大小技术调整图像大小。

用于调整图像大小的 Java API - 免费下载

Aspose.Imaging for Java 是一种广泛使用的图像处理 API,可让您非常轻松地操作图像。我们将在本文中使用此 API 来调整图像大小。您可以从 下载部分 下载 API。此外,您可以使用 pom.xml 中的以下配置从 Maven 安装它。

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

在 Java 中调整光栅图像的大小

Aspose.Imaging for Java 提供了两种调整光栅图像大小的方法。一种是简单的调整大小,您可以在其中提供结果图像的高度和宽度。然而,在第二种方法中,您还指定了一个调整大小类型,告诉 API 应该使用的调整大小技术,例如 Lanczos Resampling、Nearest Neighbor Resampling 等。在接下来的部分中,我们将讨论如何实现每一个这些方法来调整图像大小。

在 Java 中简单地调整图像大小

在这种调整大小的方法中,您只需提供结果图像的尺寸。以下是在 Java 中调整图像大小的步骤。

以下代码片段将图像大小调整为提供的高度和宽度。

// 加载图像
Image image = Image.load("aspose-logo.jpg");

// 定义新维度
image.resize(300, 300);

// 保存图片
image.save("SimpleResizing_out.jpg");

Java 使用特定类型调整图像大小

Aspose.Imaging for Java 提供了广泛的大小调整技术,在 此处 中列出了这些技术。您可以选择一个适合您的场景。例如,建议使用 Lanczos Resampling 来调整高质量的图像大小,但是它的工作速度较慢。然而,为了快速调整最近邻重采样的大小,它会损害图像的质量。以下是使用特定调整大小技术调整图像大小的步骤。

以下代码示例显示了如何使用特定的调整大小技术调整图像大小。

// 加载图像
Image image = Image.load("aspose-logo.jpg");

// 定义新尺寸和调整大小类型
image.resize(300, 300, ResizeType.LanczosResample);

// 保存图片
image.save("SimpleResizing_out.jpg");

Java中的比例图像大小调整

在调整图像大小以避免缩小或缩放的结果图像时计算纵横比。但是,纵横比的任何错误计算都可能导致图像拉伸。要摆脱这些问题,您可以让 API 自己处理纵横比。以下是按比例调整图像大小的步骤。

您还可以使用重载 Image.resizeWidthProportionally(int, ResizeType)Image.resizeHeightProportionally(int, ResizeType) 方法按比例调整图像大小时指定特定的调整大小类型。

以下 Java 代码示例显示了如何按比例调整图像大小。

// 加载图像
Image image = Image.load("aspose-logo.jpg");

// 定义新维度
int newWidth = image.getWidth() / 2;
image.resizeWidthProportionally(newWidth);
int newHeight = image.getHeight() / 2;
image.resizeHeightProportionally(newHeight);

// 保存图片
image.save("SimpleResizing_out.jpg");

在 Java 中调整矢量图像的大小

您还可以调整矢量图像的大小并将其保存为光栅图像格式,例如 PNG、JPEG、GIF 等。以下代码演示了如何使用 Aspose.Imaging 在 Java 中实现这一点。

// 加载矢量图像
try (Image image = Image.load("image.svg"))
{
  	// 定义新维度
	image.resize(image.getWidth() * 10,image.getHeight() * 15);
  
  	// 将图像保存为 PNG
	image.save("Logotype_10_15.png", new PngOptions());
}

Java Image Resizing API - 获取免费许可证

您可以使用 Aspose.Imaging for Java 并通过获得 免费临时许可证 来调整图像大小而不受评估限制。

结论

在本文中,您学习了如何在 Java 中调整图像大小。此外,本文还介绍了如何使用不同的技术调整图像大小,例如 Lanczos 重采样、最近邻重采样等。此外,还讨论了 Java 中的比例图像大小调整和矢量图像大小调整。您可以访问 文档 以阅读有关 Java 图像处理 API 的更多信息。此外,您可以从 GitHub 上提供的源代码示例中学习。如有任何问题,您可以通过我们的 论坛 联系我们。

也可以看看