在 java 代码中使用不同的压缩算法

Using different compression algorithms in java code

我有一个简短的问题。我有几个图像,都是 bmp 格式,我想将不同的压缩算法选项合并到我正在编写的应用程序中。即,假设用户选择 "Image1.bmp" 并希望使用 Brotli 或 JP2K 压缩和导出它。我如何将这些算法合并到它们自己的侦听器函数中,以便根据该算法压缩图像?我已经设置了监听器和所有东西,所以这个问题我需要帮助的唯一方面是实际包含算法。有没有我不知道的插件?我看过一点 GeoTools,但这似乎只适用于 JP2k。

如有任何见解,我们将不胜感激。非常感谢!

编辑:我只是有一个想法。有没有一种方法可以有效地 运行 从 java 函数中对某些算法发出命令行请求?

您可以创建一个接口,然后创建 classes 来实现您想要的算法:

public interface ICompressionMethods
{
    public void cMethod();
}

然后:

public class Brotli implements ICompressionMethods
{
    @Override
    public void cMethod()
    {
        // Your compression code here
    }
}

现在您需要在新 class 中实现每个新的不同算法。 这种方法的好处是,您可以将一个简单且相似的参数(如 ICompressionMethod)传递给您的方法,并根据它们的实现获得不同的结果!