簡體   English   中英

兩次壓縮位圖會導致比第一次壓縮更大的文件大小

[英]Compressing bitmap twice results in a bigger file size than the first compression

public static File createBitmapToFile(File file, Bitmap bmp, int quality) {
    try {
        OutputStream out = FileUtils.openOutputStream(file);

        // First compression
        bmp.compress(Bitmap.CompressFormat.JPEG, quality, out);

        // Second compression
        bmp.compress(Bitmap.CompressFormat.JPEG, quality, out);

        out.flush();
        out.close();

        return file;
    } catch (IOException e) {
        e.printStackTrace();
    }
    return null;
}

我仍然不知道為什么第二次壓縮會導致更大的文件大小。 我用 70 作為質量。

我在這里做錯了什么嗎? 不是當你壓縮一些東西然后再次壓縮它時它不應該更小嗎?

我的目標是不超過 100k 字節,所以當我超過它時,我需要降低文件大小。

您不是“兩次壓縮位圖”。 您將其壓縮一次,然后將其寫入文件,然后再次壓縮原始位圖,然后再次將其寫入文件。 結果將是單個壓縮的兩倍。 解決方法:使用一種壓縮方式。

為什么您期望兩次壓縮小於一次,即使做得正確,是另一個問題,但這不是您的代碼實際所做的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM