{
  "date": "2026-10-27",
  "method": {
    "ko": "libvips로 만든 2400×1600 사진 WebP(화질 80)와 반투명 그림자가 있는 800×800 스티커 WebP를 실제 processImage로 JPG·PNG로 바꿨습니다. PSNR은 받은 WebP를 연 픽셀과 비교한 RGB 값입니다. 3장짜리 움직이는 WebP도 넣어 봤습니다.",
    "en": "A 2400×1600 photo WebP (quality 80) and an 800×800 sticker WebP with a soft shadow, both written by libvips, were converted to JPG and PNG through the shipped processImage. PSNR is RGB against the decoded WebP. A three-frame animated WebP was also tried.",
    "ja": "libvipsで作った2400×1600の写真WebP（画質80）と、半透明の影がある800×800のステッカーWebPを、公開中のprocessImageでJPG・PNGに変えました。PSNRは元のWebPを開いたピクセルと比べたRGB値です。3コマの動くWebPも試しました。"
  },
  "table": {
    "ko": {
      "headers": [
        "파일·저장 형식",
        "용량",
        "원래 WebP와 차이",
        "투명"
      ],
      "rows": [
        [
          "사진 WebP (받은 파일)",
          "374.1 KB",
          "—",
          "—"
        ],
        [
          "→ JPG 85%",
          "374.8 KB",
          "PSNR 36.9 dB",
          "—"
        ],
        [
          "→ JPG 92%",
          "703.0 KB",
          "PSNR 38.7 dB",
          "—"
        ],
        [
          "→ JPG 95%",
          "981.1 KB",
          "PSNR 40.3 dB",
          "—"
        ],
        [
          "→ PNG",
          "4.29 MB",
          "픽셀 100% 같음",
          "—"
        ],
        [
          "스티커 WebP (받은 파일)",
          "29.3 KB",
          "—",
          "완전 투명 266,263px · 반투명 92,113px"
        ],
        [
          "→ PNG",
          "93.6 KB",
          "픽셀 100% 같음",
          "그대로 유지"
        ],
        [
          "→ JPG 85%",
          "19.5 KB",
          "—",
          "0px (흰색으로 채움)"
        ]
      ]
    },
    "en": {
      "headers": [
        "File · saved as",
        "File size",
        "Difference from the WebP",
        "Transparency"
      ],
      "rows": [
        [
          "Photo WebP (downloaded)",
          "374.1 KB",
          "—",
          "—"
        ],
        [
          "→ JPG 85%",
          "374.8 KB",
          "PSNR 36.9 dB",
          "—"
        ],
        [
          "→ JPG 92%",
          "703.0 KB",
          "PSNR 38.7 dB",
          "—"
        ],
        [
          "→ JPG 95%",
          "981.1 KB",
          "PSNR 40.3 dB",
          "—"
        ],
        [
          "→ PNG",
          "4.29 MB",
          "100% same pixels",
          "—"
        ],
        [
          "Sticker WebP (downloaded)",
          "29.3 KB",
          "—",
          "266,263 px fully clear · 92,113 px partly clear"
        ],
        [
          "→ PNG",
          "93.6 KB",
          "100% same pixels",
          "Kept exactly"
        ],
        [
          "→ JPG 85%",
          "19.5 KB",
          "—",
          "0 px (filled white)"
        ]
      ]
    },
    "ja": {
      "headers": [
        "ファイル・保存形式",
        "容量",
        "元のWebPとの差",
        "透明"
      ],
      "rows": [
        [
          "写真のWebP（ダウンロード）",
          "374.1 KB",
          "—",
          "—"
        ],
        [
          "→ JPG 85%",
          "374.8 KB",
          "PSNR 36.9 dB",
          "—"
        ],
        [
          "→ JPG 92%",
          "703.0 KB",
          "PSNR 38.7 dB",
          "—"
        ],
        [
          "→ JPG 95%",
          "981.1 KB",
          "PSNR 40.3 dB",
          "—"
        ],
        [
          "→ PNG",
          "4.29 MB",
          "100%同じピクセル",
          "—"
        ],
        [
          "ステッカーのWebP（ダウンロード）",
          "29.3 KB",
          "—",
          "完全に透明 266,263px · 半透明 92,113px"
        ],
        [
          "→ PNG",
          "93.6 KB",
          "100%同じピクセル",
          "そのまま維持"
        ],
        [
          "→ JPG 85%",
          "19.5 KB",
          "—",
          "0px（白で塗る）"
        ]
      ]
    }
  },
  "raw": {
    "source": {
      "bytes": 383082,
      "width": 2400,
      "height": 1600
    },
    "photo": [
      {
        "id": "jpeg-85",
        "options": {
          "format": "jpeg",
          "quality": 85
        },
        "bytes": 383834,
        "width": 2400,
        "height": 1600,
        "setting": "Quality 85%",
        "ssim": 0.8737755431942972,
        "psnr": 36.93318826535964,
        "exactPercent": 1.3821354166666666,
        "maxError": 54,
        "ms": 501,
        "reread": {
          "format": "jpeg",
          "width": 2400,
          "height": 1600,
          "hasAlpha": false
        }
      },
      {
        "id": "jpeg-92",
        "options": {
          "format": "jpeg",
          "quality": 92
        },
        "bytes": 719833,
        "width": 2400,
        "height": 1600,
        "setting": "Quality 92%",
        "ssim": 0.9169829892214691,
        "psnr": 38.65709681170179,
        "exactPercent": 2.2414322916666665,
        "maxError": 41,
        "ms": 678,
        "reread": {
          "format": "jpeg",
          "width": 2400,
          "height": 1600,
          "hasAlpha": false
        }
      },
      {
        "id": "jpeg-95",
        "options": {
          "format": "jpeg",
          "quality": 95
        },
        "bytes": 1004688,
        "width": 2400,
        "height": 1600,
        "setting": "Quality 95%",
        "ssim": 0.9443620032504827,
        "psnr": 40.30417609011187,
        "exactPercent": 2.969479166666667,
        "maxError": 28,
        "ms": 850,
        "reread": {
          "format": "jpeg",
          "width": 2400,
          "height": 1600,
          "hasAlpha": false
        }
      },
      {
        "id": "png",
        "options": {
          "format": "png"
        },
        "bytes": 4502078,
        "width": 2400,
        "height": 1600,
        "setting": "Original colors · compression 6",
        "ssim": 1,
        "psnr": null,
        "exactPercent": 100,
        "maxError": 0,
        "ms": 677,
        "reread": {
          "format": "png",
          "width": 2400,
          "height": 1600,
          "hasAlpha": true
        }
      }
    ],
    "sticker": {
      "source": {
        "bytes": 30026,
        "width": 800,
        "height": 800,
        "transparentPixels": 266263,
        "partialPixels": 92113
      },
      "runs": [
        {
          "id": "png",
          "bytes": 95801,
          "width": 800,
          "height": 800,
          "transparentPixels": 266263,
          "partialPixels": 92113,
          "alphaMeanError": 0,
          "corner": [
            0,
            0,
            0,
            0
          ],
          "rgbExactPercent": 100,
          "ms": 86,
          "reread": {
            "format": "png",
            "hasAlpha": true,
            "channels": 4
          }
        },
        {
          "id": "jpeg-85",
          "bytes": 20006,
          "width": 800,
          "height": 800,
          "transparentPixels": 0,
          "partialPixels": 0,
          "alphaMeanError": 135.4544765625,
          "corner": [
            255,
            255,
            255,
            255
          ],
          "rgbExactPercent": null,
          "ms": 105,
          "reread": {
            "format": "jpeg",
            "hasAlpha": false,
            "channels": 3
          }
        }
      ]
    },
    "animated": {
      "accepted": false,
      "message": "Animated WebP isn't supported yet."
    }
  },
  "figures": [
    {
      "file": {
        "ko": "batch2-webp-wont-open-comparison-ko.webp",
        "en": "batch2-webp-wont-open-comparison-en.webp",
        "ja": "batch2-webp-wont-open-comparison-ja.webp"
      },
      "width": 1200,
      "height": {
        "ko": 888,
        "en": 941,
        "ja": 860
      },
      "alt": {
        "ko": "받은 WebP와 바꾼 파일을 같은 자리에서 잘라 나란히 놓았습니다. 체크무늬가 보이는 곳이 투명입니다.",
        "en": "The downloaded WebP and the converted files cropped at the same spot; wherever the checks show, the file is transparent.",
        "ja": "元のWebPと変換したファイルを同じ場所で切り出して並べました。市松模様が見える所が透明です。"
      },
      "caption": {
        "ko": "받은 WebP와 바꾼 파일을 같은 자리에서 잘라 나란히 놓았습니다. 체크무늬가 보이는 곳이 투명입니다.",
        "en": "The downloaded WebP and the converted files cropped at the same spot; wherever the checks show, the file is transparent.",
        "ja": "元のWebPと変換したファイルを同じ場所で切り出して並べました。市松模様が見える所が透明です。"
      }
    },
    {
      "file": {
        "ko": "batch2-webp-wont-open-steps-ko.webp",
        "en": "batch2-webp-wont-open-steps-en.webp",
        "ja": "batch2-webp-wont-open-steps-ja.webp"
      },
      "width": 1200,
      "height": {
        "ko": 1800,
        "en": 1800,
        "ja": 1800
      },
      "alt": {
        "ko": "현재 도구에서 글의 설정을 실제로 적용한 화면입니다.",
        "en": "The current tool with the article’s settings actually applied.",
        "ja": "現在のツールで記事の設定を実際に適用した画面です。"
      },
      "caption": {
        "ko": "현재 도구에서 글의 설정을 실제로 적용한 화면입니다.",
        "en": "The current tool with the article’s settings actually applied.",
        "ja": "現在のツールで記事の設定を実際に適用した画面です。"
      }
    }
  ]
}