使用jmagick从图像中删除元数据



我已经使用下面的imagemagick命令从图像中删除了元数据。

convert input.png -strip output.png

它几乎减少了2MB文件大小的20%。

我需要做同样的使用Jmagick java api。

是否有任何可用的api在Jmagick删除元数据?

我不能读Java,但在src/magick/magick_MagickImage.c中似乎有一个strip方法:

/*
 * Class:     magick_MagickImage
 * Method:    strip
 * Signature: ()Z
 */
JNIEXPORT jboolean JNICALL Java_magick_MagickImage_strip
    (JNIEnv *env, jobject self) {
    Image *image = NULL;
    jboolean retVal;
    image = (Image*) getHandle(env, self, "magickImageHandle", NULL);
    if (image == NULL) {
    throwMagickException(env, "Unable to retrieve image handle");
    return JNI_FALSE;
    }
    retVal = StripImage(image);
    return(retVal);
}

这取决于您使用的版本!

JMagick升级到6.7.7版本:

MagickImage没有方法strip()

当前(Master) jmagic版本:

MagickImage有一个名为strip()的方法

最新更新