{
  "date": "2026-10-27",
  "method": {
    "ko": "글씨(11~40px)·하늘 그라데이션·잔무늬를 한 장에 넣은 1600×1200 PNG(1.60 MB)를 실제 processImage로 JPG 화질 60·75·85·95·100으로 저장했습니다. PSNR은 영역별 RGB 값이고, 색 정보 해상도는 저장된 JPG 머리글을 직접 읽었습니다. 비교용으로 같은 그림을 WebP 60·75·85·95로도 저장했습니다.",
    "en": "A 1600×1200 PNG (1.60 MB) with text (11–40px), a sky gradient and fine texture was saved through the shipped processImage as JPG at quality 60, 75, 85, 95 and 100. PSNR is RGB per area; color resolution was read from each saved JPG header. For comparison, the same picture was also saved as WebP at 60, 75, 85 and 95.",
    "ja": "文字（11〜40px）・空のグラデーション・細かい模様を1枚に入れた1600×1200のPNG（1.60 MB）を、公開中のprocessImageでJPGの画質60・75・85・95・100で保存しました。PSNRは範囲ごとのRGB値で、色情報の解像度は保存したJPGのヘッダーを直接読みました。比較用に同じ絵をWebPの60・75・85・95でも保存しました。"
  },
  "table": {
    "ko": {
      "headers": [
        "화질",
        "용량",
        "글씨 PSNR",
        "그라데이션 PSNR",
        "잔무늬 PSNR",
        "색 정보"
      ],
      "rows": [
        [
          "60%",
          "67.3 KB",
          "32.6 dB",
          "42.7 dB",
          "33.5 dB",
          "가로·세로 절반"
        ],
        [
          "75%",
          "104.5 KB",
          "34.5 dB",
          "46.1 dB",
          "34.3 dB",
          "가로·세로 절반"
        ],
        [
          "85%",
          "169.1 KB",
          "37.3 dB",
          "49.8 dB",
          "35.7 dB",
          "가로만 절반"
        ],
        [
          "95%",
          "431.4 KB",
          "46.3 dB",
          "51.7 dB",
          "39.0 dB",
          "전부 유지"
        ],
        [
          "100%",
          "1019.1 KB",
          "67.9 dB",
          "53.0 dB",
          "50.8 dB",
          "전부 유지"
        ],
        [
          "WebP 60%",
          "57.9 KB",
          "—",
          "—",
          "—",
          "비교용"
        ],
        [
          "WebP 75%",
          "79.9 KB",
          "—",
          "—",
          "—",
          "비교용"
        ],
        [
          "WebP 85%",
          "183.0 KB",
          "—",
          "—",
          "—",
          "비교용"
        ],
        [
          "WebP 95%",
          "402.0 KB",
          "—",
          "—",
          "—",
          "비교용"
        ]
      ]
    },
    "en": {
      "headers": [
        "Quality",
        "File size",
        "Text PSNR",
        "Gradient PSNR",
        "Texture PSNR",
        "Color detail"
      ],
      "rows": [
        [
          "60%",
          "67.3 KB",
          "32.6 dB",
          "42.7 dB",
          "33.5 dB",
          "half width and height"
        ],
        [
          "75%",
          "104.5 KB",
          "34.5 dB",
          "46.1 dB",
          "34.3 dB",
          "half width and height"
        ],
        [
          "85%",
          "169.1 KB",
          "37.3 dB",
          "49.8 dB",
          "35.7 dB",
          "half width only"
        ],
        [
          "95%",
          "431.4 KB",
          "46.3 dB",
          "51.7 dB",
          "39.0 dB",
          "full"
        ],
        [
          "100%",
          "1019.1 KB",
          "67.9 dB",
          "53.0 dB",
          "50.8 dB",
          "full"
        ],
        [
          "WebP 60%",
          "57.9 KB",
          "—",
          "—",
          "—",
          "for comparison"
        ],
        [
          "WebP 75%",
          "79.9 KB",
          "—",
          "—",
          "—",
          "for comparison"
        ],
        [
          "WebP 85%",
          "183.0 KB",
          "—",
          "—",
          "—",
          "for comparison"
        ],
        [
          "WebP 95%",
          "402.0 KB",
          "—",
          "—",
          "—",
          "for comparison"
        ]
      ]
    },
    "ja": {
      "headers": [
        "画質",
        "容量",
        "文字のPSNR",
        "グラデーションのPSNR",
        "細かい模様のPSNR",
        "色の情報"
      ],
      "rows": [
        [
          "60%",
          "67.3 KB",
          "32.6 dB",
          "42.7 dB",
          "33.5 dB",
          "縦横とも半分"
        ],
        [
          "75%",
          "104.5 KB",
          "34.5 dB",
          "46.1 dB",
          "34.3 dB",
          "縦横とも半分"
        ],
        [
          "85%",
          "169.1 KB",
          "37.3 dB",
          "49.8 dB",
          "35.7 dB",
          "横だけ半分"
        ],
        [
          "95%",
          "431.4 KB",
          "46.3 dB",
          "51.7 dB",
          "39.0 dB",
          "すべて維持"
        ],
        [
          "100%",
          "1019.1 KB",
          "67.9 dB",
          "53.0 dB",
          "50.8 dB",
          "すべて維持"
        ],
        [
          "WebP 60%",
          "57.9 KB",
          "—",
          "—",
          "—",
          "比較用"
        ],
        [
          "WebP 75%",
          "79.9 KB",
          "—",
          "—",
          "—",
          "比較用"
        ],
        [
          "WebP 85%",
          "183.0 KB",
          "—",
          "—",
          "—",
          "比較用"
        ],
        [
          "WebP 95%",
          "402.0 KB",
          "—",
          "—",
          "—",
          "比較用"
        ]
      ]
    }
  },
  "raw": {
    "source": {
      "width": 1600,
      "height": 1200,
      "bytes": 1674762
    },
    "rows": [
      {
        "quality": 60,
        "bytes": 68907,
        "ssim": 0.8829272746287793,
        "all": {
          "psnr": 34.2712132287245,
          "exactPercent": 23.654010416666665,
          "maxError": 121
        },
        "zones": {
          "text": {
            "psnr": 32.606002040239986,
            "exactPercent": 90.94166666666666,
            "maxError": 121
          },
          "gradient": {
            "psnr": 42.70504835734366,
            "exactPercent": 3.245833333333333,
            "maxError": 47
          },
          "texture": {
            "psnr": 33.498860289737166,
            "exactPercent": 0.21427083333333333,
            "maxError": 100
          }
        },
        "ms": 234,
        "sampling": {
          "marker": "c2",
          "comps": [
            "2x2",
            "1x1",
            "1x1"
          ]
        }
      },
      {
        "quality": 75,
        "bytes": 106960,
        "ssim": 0.9037816988438598,
        "all": {
          "psnr": 35.482270938859315,
          "exactPercent": 25.19078125,
          "maxError": 97
        },
        "zones": {
          "text": {
            "psnr": 34.48135193175586,
            "exactPercent": 91.21979166666667,
            "maxError": 97
          },
          "gradient": {
            "psnr": 46.06919998552116,
            "exactPercent": 8.846458333333333,
            "maxError": 43
          },
          "texture": {
            "psnr": 34.25446300210665,
            "exactPercent": 0.3484375,
            "maxError": 88
          }
        },
        "ms": 246,
        "sampling": {
          "marker": "c2",
          "comps": [
            "2x2",
            "1x1",
            "1x1"
          ]
        }
      },
      {
        "quality": 85,
        "bytes": 173181,
        "ssim": 0.9257735525025358,
        "all": {
          "psnr": 37.33389463538644,
          "exactPercent": 27.311562499999997,
          "maxError": 92
        },
        "zones": {
          "text": {
            "psnr": 37.333738558385306,
            "exactPercent": 93.05166666666666,
            "maxError": 92
          },
          "gradient": {
            "psnr": 49.75874781790666,
            "exactPercent": 15.147708333333334,
            "maxError": 20
          },
          "texture": {
            "psnr": 35.65666322289225,
            "exactPercent": 0.5234375,
            "maxError": 83
          }
        },
        "ms": 303,
        "sampling": {
          "marker": "c2",
          "comps": [
            "2x1",
            "1x1",
            "1x1"
          ]
        }
      },
      {
        "quality": 95,
        "bytes": 441798,
        "ssim": 0.9667210160100372,
        "all": {
          "psnr": 41.546859107312414,
          "exactPercent": 29.02359375,
          "maxError": 42
        },
        "zones": {
          "text": {
            "psnr": 46.27120936752641,
            "exactPercent": 93.67270833333333,
            "maxError": 36
          },
          "gradient": {
            "psnr": 51.71826648481662,
            "exactPercent": 19.333333333333332,
            "maxError": 2
          },
          "texture": {
            "psnr": 39.03422500083923,
            "exactPercent": 1.5441666666666667,
            "maxError": 42
          }
        },
        "ms": 456,
        "sampling": {
          "marker": "c2",
          "comps": [
            "1x1",
            "1x1",
            "1x1"
          ]
        }
      },
      {
        "quality": 100,
        "bytes": 1043584,
        "ssim": 0.9969713156002945,
        "all": {
          "psnr": 52.60671575646923,
          "exactPercent": 38.11296875,
          "maxError": 4
        },
        "zones": {
          "text": {
            "psnr": 67.89684989494484,
            "exactPercent": 98.72958333333334,
            "maxError": 4
          },
          "gradient": {
            "psnr": 52.982375711841144,
            "exactPercent": 24,
            "maxError": 1
          },
          "texture": {
            "psnr": 50.769343363296684,
            "exactPercent": 14.861145833333333,
            "maxError": 4
          }
        },
        "ms": 783,
        "sampling": {
          "marker": "c2",
          "comps": [
            "1x1",
            "1x1",
            "1x1"
          ]
        }
      }
    ],
    "webp": [
      {
        "quality": 60,
        "bytes": 59332,
        "ssim": 0.8778752283668294
      },
      {
        "quality": 75,
        "bytes": 81806,
        "ssim": 0.8941742725269232
      },
      {
        "quality": 85,
        "bytes": 187408,
        "ssim": 0.9528239455679395
      },
      {
        "quality": 95,
        "bytes": 411648,
        "ssim": 0.9859590816970386
      }
    ]
  },
  "figures": [
    {
      "file": {
        "ko": "batch2-jpg-quality-number-meaning-comparison-ko.webp",
        "en": "batch2-jpg-quality-number-meaning-comparison-en.webp",
        "ja": "batch2-jpg-quality-number-meaning-comparison-ja.webp"
      },
      "width": 1200,
      "height": {
        "ko": 1129,
        "en": 1129,
        "ja": 1129
      },
      "alt": {
        "ko": "같은 그림의 세 부분을 화질 숫자별로 잘라 2배로 키웠습니다. 실제로 저장한 파일의 픽셀입니다.",
        "en": "Three areas of the same picture at each quality number, enlarged 2×, taken from the actual saved files.",
        "ja": "同じ絵の3か所を画質の数字ごとに切り出し、2倍に拡大しました。実際に保存したファイルのピクセルです。"
      },
      "caption": {
        "ko": "같은 그림의 세 부분을 화질 숫자별로 잘라 2배로 키웠습니다. 실제로 저장한 파일의 픽셀입니다.",
        "en": "Three areas of the same picture at each quality number, enlarged 2×, taken from the actual saved files.",
        "ja": "同じ絵の3か所を画質の数字ごとに切り出し、2倍に拡大しました。実際に保存したファイルのピクセルです。"
      }
    },
    {
      "file": {
        "ko": "batch2-jpg-quality-number-meaning-steps-ko.webp",
        "en": "batch2-jpg-quality-number-meaning-steps-en.webp",
        "ja": "batch2-jpg-quality-number-meaning-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": "現在のツールで記事の設定を実際に適用した画面です。"
      }
    }
  ]
}