{
  "date": "2026-10-23",
  "audience": "US English",
  "method": "Actual browser file selection and conversion; downloaded ZIP opened and every JPEG decoded with an independent image reader. Visual review of every rendered page and selected small text. No OCR accuracy, lossless output, print-DPI metadata, universal font/color fidelity or physical-phone claim.",
  "pages": [
    {
      "archive": "english-150.zip",
      "file": "english-pages-page-001.jpg",
      "dimensions": [
        1275,
        1650
      ],
      "bytes": 122343,
      "jpeg_decoded": true
    },
    {
      "archive": "english-150.zip",
      "file": "english-pages-page-002.jpg",
      "dimensions": [
        1650,
        1275
      ],
      "bytes": 130299,
      "jpeg_decoded": true
    },
    {
      "archive": "rotation-crop-150.zip",
      "file": "rotation-crop-page-001.jpg",
      "dimensions": [
        1650,
        1275
      ],
      "bytes": 119673,
      "jpeg_decoded": true
    },
    {
      "archive": "rotation-crop-150.zip",
      "file": "rotation-crop-page-002.jpg",
      "dimensions": [
        1175,
        1550
      ],
      "bytes": 120609,
      "jpeg_decoded": true
    },
    {
      "archive": "scan-300.zip",
      "file": "scan-page-001.jpg",
      "dimensions": [
        2550,
        3300
      ],
      "bytes": 196717,
      "jpeg_decoded": true
    },
    {
      "archive": "selected-page-72.zip",
      "file": "english-pages-page-002.jpg",
      "dimensions": [
        792,
        612
      ],
      "bytes": 35082,
      "jpeg_decoded": true
    }
  ],
  "additional_checks": [
    "Single JPG bytes equal corresponding ZIP entry",
    "390px browser selection/conversion/download: output JPEG bytes equal desktop",
    "300dpi/100% quality: page1 selection repeated, one JPEG at2550x3300",
    "72dpi/70% quality: only source page2 at792x612; visibly coarser small type"
  ],
  "guard_results": [
    {
      "file": "encrypted.pdf",
      "convertDisabled": true,
      "message": "Password-protected PDFs are not supported. Use an unprotected copy.",
      "resultsHidden": true
    },
    {
      "file": "malformed.pdf",
      "convertDisabled": true,
      "message": "Invalid PDF structure.",
      "resultsHidden": true
    },
    {
      "file": "guard-31-pages.pdf",
      "dpi": "72",
      "message": "Choose between 1 and 30 pages per conversion.",
      "resultsHidden": true
    },
    {
      "file": "guard-16-pages.pdf",
      "dpi": "300",
      "message": "The selected pages exceed 120 million output pixels. Select fewer pages or a lower resolution. Nothing was exported.",
      "resultsHidden": true
    },
    {
      "file": "guard-oversized-page.pdf",
      "dpi": "150",
      "message": "Page 1 exceeds the image-size limit at 150 dpi. Choose a lower resolution. Nothing was exported.",
      "resultsHidden": true
    },
    {
      "file": "guard-61-pages.pdf",
      "message": "This PDF exceeds the 60-source-page limit.",
      "resultsHidden": true
    },
    {
      "file": "guard-input-size.pdf",
      "message": "This PDF exceeds the 30 MiB input limit. Choose a smaller file.",
      "resultsHidden": true
    },
    {
      "file": "english-pages.pdf",
      "pages": "3",
      "message": "Page ranges must be between 1 and 2, in ascending order.",
      "resultsHidden": true
    }
  ],
  "not_tested": [
    "Physical phone",
    "Physical operating-system drag/drop (not advertised)",
    "80MiB output cap at its limit",
    "Peak memory, performance timing and every PDF annotation/form type"
  ]
}