Может кто-нибудь объяснить мне, как OpenSeadragon определяет размеры плитки в пирамидальном изображении .tiff? - PullRequest
1 голос
/ 04 июля 2019

Я пытаюсь понять, как OpenSeadragon определяет размеры плиток в пирамидальном изображении .tiff для создания первого слоя плиток. Я не вижу корреляции между различными размерами, определенными в файле info.json, который запрашивает OpenSeadragon (который использует API изображений IIIF), и размерами плитки.

Когда я щелкаю в средстве просмотра OpenSeadragon, отправляются несколько запросов на изображение для запроса листов с высоким разрешением, но размеры резко меняются от изображения к изображению и между местоположениями щелчков внутри средства просмотра.

Можно ли заставить OpenSeadragon использовать размеры, определенные в info.json? Из того, что я вижу, это не так.

Я пытался просмотреть документы IFFF Image API, документы OpenSeadragon и файл OpenSeadragon.js, но в этом довольно сложно полностью следовать ходу выполнения.

Вот как выглядит соответствующая часть файла info.json:

"width": 6555,
  "height": 6995,
  "sizes": [
    {
      "width": 102,
      "height": 109
    },
    {
      "width": 205,
      "height": 219
    },
    {
      "width": 410,
      "height": 437
    },
    {
      "width": 819,
      "height": 874
    },
    {
      "width": 1639,
      "height": 1749
    },
    {
      "width": 3278,
      "height": 3498
    }
  ],
  "tiles": [
    {
      "width": 6555,
      "height": 1664,
      "scaleFactors": [
        1,
        2,
        4,
        8,
        16,
        32,
        64
      ]
    }
  ],
  "profile": [
    "http://iiif.io/api/image/2/level2.json",
    {
      "formats": [
        "tif",
        "jpg",
        "gif",
        "png"
      ],
      "maxArea": 400000000,
      "qualities": [
        "bitonal",
        "default",
        "gray",
        "color"
      ],
      "supports": [
        "sizeByW",
        "regionByPx",
        "sizeByWhListed",
        "cors",
        "regionSquare",
        "sizeByDistortedWh",
        "sizeAboveFull",
        "canonicalLinkHeader",
        "sizeByConfinedWh",
        "sizeByPct",
        "jsonldMediaType",
        "regionByPct",
        "sizeByH",
        "rotationArbitrary",
        "baseUriRedirect",
        "rotationBy90s",
        "profileLinkHeader",
        "sizeByForcedWh",
        "sizeByWh",
        "mirroring"
      ]
    }
  ]
}
...