ubl / php-iiif-prezi-reader
将 IIIF 展示 API 资源读取到 PHP 对象中,提供一些方便的数据提取方法
0.3.0
2019-09-13 13:54 UTC
Requires
- php: >=5.6
- flow/jsonpath: >=0.4.0
Requires (Dev)
- phpunit/phpunit: ~7.5
This package is not auto-updated.
Last update: 2024-09-13 13:52:51 UTC
README
将 IIIF 展示 API 资源读取到 PHP 对象中,提供一些方便的数据提取方法。
至少需要 PHP 5.6。
IIIF 展示 API 支持 主要针对版本 2.1,同时提供对 展示 API 3.0 和 元数据 API 1.0 的基本支持。
从哪里开始
- 任何 IIIF 清单(或任何其他 IIIF 展示 API / 元数据 API 资源 json 文档)作为文本内容、URL 或路径,都可以通过
\Ubl\Iiif\Tools\IiifHelper::loadIiifResource($resource)
加载到一个代表该文档的 PHP 对象中。该对象将包含所有 "子" 资源,其名称为 IIIF 元数据 API 1(命名空间Ubl\Iiif\Presentation\V1\Model\Resources
)、IIIF 展示 API 2(《Ubl\Iiif\Presentation\V2\Model\Resources)或 IIIF 展示 API 3(《Ubl\Iiif\Presentation\V3\Model\Resources)中的属性名称。您也可以通过在Ubl\Iiif\Presentation\Common\Model\Resources
中定义的接口使用这些资源中的大多数。这些接口尝试提供(略有减少的)版本无关的功能。 - 如果您想使用任何框架的功能来检索远程文档而不是 PHP 的
file_get_contents()
,请实现\Ubl\Iiif\Tools\UrlReaderInterface
并在加载任何文档之前使用\Ubl\Iiif\Tools\IiifHelper::setUrlReader(UrlReaderInterface $urlReader)
。 - 使用
\Ubl\Iiif\Tools\IiifHelper::setMaxThumbnailWidth($maxThumbnailWidth)
和\Ubl\Iiif\Tools\IiifHelper::setMaxThumbnailHeight($maxThumbnailHeight)
来设置提供 IIIF 图像服务的资源缩略图的最大尺寸。
待办事项
- 支持注释分组(通过元数据 API 1 的 Layer,展示 API 2;通过 AnnotationCollection 通过展示 API 3)
- 完成元数据 API 1.0 和展示 API 3.0 的实现
- 改进注释支持,包括注释目标的选择器/片段以及资源类型
- 检查大型清单的性能,当清单中有数百或数千个画布或注释时
- 处理只引用而不包含的资源(例如,集合中的清单)
- 提高测试覆盖率