islandora / islandora_mirador
Mirador查看器对Islandora的支持
Requires
- drupal/islandora: ^2
Conflicts
This package is auto-updated.
Last update: 2024-09-04 17:17:44 UTC
README
Drupal的Mirador查看器集成
简介
这是一个围绕Mirador图像查看器构建的Drupal模块。它不严格需要Islandora,但是它依赖于IIIF Manifests。Islandora生成这些manifest,但它们也可以来自第三方来源。
安装
$ composer require drupal/islandora_mirador $ drush en islandora_mirador
如果您想使用Islandora的显示提示系统,并且Mirador尚未由ISLE或Islandora Playbook之类的安装堆栈设置,您需要使用Drush导入显示提示。
drush migrate:import islandora_mirador_tags
从Islandora默认值升级
此模块以前随Islandora Defaults一起分发。如果您正在升级,您可能需要清除Drupal的缓存并重新启动您的Web服务器以解决“插件未找到”错误。
Mirador库
模块可以使用托管在Web上的Mirador集成实例或本地部署。
UPEI Robertson图书馆维护了一个包含图像处理和文本叠加插件的Mirador库版本。此编译库可在https://roblib.github.io/mirador-integration-islandora/islandora-mirador-0.1.0.js上找到,GitHub项目在https://github.com/roblib/mirador-integration-islandora。
如果您有本地构建,请将其放在您的webroot中的libraries/mirador/dist/main.js。
使用方法
此模块提供了一个块,可以通过Structure>Blocks或Contexts包含它。它接受一个IIIF manifest。
模块还提供了一个“Mirador”术语在islandora_display
词汇表中,可以在编辑Islandora存储库项对象时选择作为显示提示。这可以用来触发上面的块位置。
有关如何设置驱动查看器的内容的说明,请参阅Islandora IIIF文档。
配置
Islandora Mirador配置页面位于“管理”>“配置”>“媒体”>“Mirador设置”(/admin/config/media/mirador
)。
-
Mirador库位置:您可以选择库是本地部署还是设置远程库的位置(见上文的Mirador库)。
-
启用插件:您还可以启用特定插件。您需要知道这些插件是否包含在Mirador集成的特定构建中。Robertson图书馆的Mirador版本支持“文本叠加”和“Mirador图像工具”插件。
-
IIIF Manifest URL:您可以为检索内容的IIIF manifest设置URL模式。默认Islandora附带一个名为“IIIF Manifest”的REST导出视图,位于
/admin/structure/views/view/iiif_manifest
。要提供的URL可以在单页显示的路径设置中找到。
将“%node”替换为“[node:nid]”,并使用您的安装域进行前缀。

插件
默认插件
从版本 >= 2.3 开始,默认的Islandora Mirador配置使用UPEI的Mirador库版本,该库与以下Mirador 3插件一起编译
开发自定义插件
在Mirador 3中,插件必须构建到应用程序中。有关更多信息,请参阅文档页面创建Mirador 3插件。
按照上述Mirador库说明部署您自定义构建的Mirador应用程序,使其可用于您的Islandora网站。
您可以通过实现此模块中定义的插件类型在Islandora本身中添加对其他Mirador插件的支持。为此,声明Drupal\islandora_mirador\IslandoraMiradorPluginPluginBase的子类,并添加以下注释
/** * @IslandoraMiradorPlugin( * id = "machineName", * label = @Translation("Plugin label"), * description = @Translation("Description of the plugin .") * ) */
迄今为止,只有一个函数,即windowConfigAlter。您可以使用它提供插件所需的任何配置。在UI中修改配置尚未实现。
使用文本覆盖
当Mirador文本覆盖配置正确时,用户可以查看、选择,并使用屏幕阅读器阅读扫描文档中OCR'过的文本。通过进一步的工作(在islandora_iiif模块中尚未实现),Mirador查看器将能够突出显示通过搜索找到的文本,并在查看器中显示搜索界面。
设置hOCR
要显示文本覆盖,Mirador必须提供hOCR文本数据 - 这是一种包含提取文本相对于显示图像的位置信息的OCR文本。以下是步骤
- 确保您正在运行isle-buildkit版本3.2.12或更高版本
- 安装Drupal模块https://github.com/discoverygarden/islandora_hocr和https://github.com/Born-Digital-US/islandora_iiif_hocr
- 创建一个派生操作,以便当原始文件图像上传到您的存储库时,创建一个具有等于由https://github.com/discoverygarden/islandora_hocr创建的
媒体使用术语的 file
媒体实体
测试hOCR
按照以下步骤确认hOCR是否正常工作。
- 添加一个新的存储库条目,类型为分页内容
- 添加一个类型为页面的子对象
- 在该子对象上,添加一个类型为文件的媒体,并用包含文本的JP2或TIFF文件填充它。
- 在"媒体使用"下检查原始文件"(不要检查任何其他媒体使用)
- 不要添加任何内容到您创建的
字段。这将在此文件上运行OCR时填充。
- 保存媒体。
- 大约一分钟后,应填充包含位置数据字段的提取文本。您可以直接通过编辑文件对象来验证此操作,您会看到“hOCR提取文本”字段现在附有一个文件,您可以查看该文件并观察到它包含类似以下的xml文本
配置IIIF Manifest视图以添加Manifest添加
按照https://github.com/Born-Digital-US/islandora_iiif_hocr上的说明进行操作,以允许在您的hOCR上Mirador查看器内进行搜索。
使用上下文配置Mirador查看器以显示页面和分页内容
Islandora使用上下文来控制不同Islandora节点上显示哪些块。注意以下说明只是配置此功能许多可能方法之一。
如果尚未存在,您需要添加单个页面和分页内容类型的Mirador显示上下文
在“管理”>“结构”>“上下文”中配置上下文。
-
对于单个页面(“Mirador”)上下文,您可以根据“节点具有术语” “Mirador”(如果喜欢,AND “页面”),并将反应设置为块。使用类似于媒体显示(Islandora启动网站的一部分)的视图来提供使用“Mirador”视图模式显示适当媒体的块
-
对于多页面(“分页内容 - Mirador”)上下文,我们根据“节点具有术语” “Mirador” AND “分页内容”进行条件判断
...并将反应设置为在内容区域显示Mirador块
...这可以通过使用.../book-manifest
为IIIF Manifest URL进行配置
如前所述,这只是设置Mirador查看器配置的一种方式。例如,如果您想始终使用Mirador查看器查看页面和分页内容,您可以删除这些上下文中的“节点具有术语”条件中的“Mirador”条件。
主题变量
Mirador的外观和行为是通过传递给JavaScript应用程序的设置进行配置的。主要在'window'和'workspace'配置数组中。
这些可以通过主题变量或通过将它们作为参数传递给实例化Mirador块类来进行指定。
通过主题钩子隐藏关闭按钮
function mymodule_preprocess_mirador(&$variables) { $variables['window_config']['allowClose'] = FALSE; }
通过实例化块来创建最小UI
$block = \Drupal::service('plugin.manager.block')->createInstance($viewer . '_block', [ 'iiif_manifest_url' => "/node/$manifest_nid/manifest-single", 'thumbnail_navigation_position' => 'hidden', 'window_config' => [ 'allowClose' => FALSE, 'allowMaximize' => FALSE, 'allowTopMenuButton' => FALSE, 'allowWindowSideBar' => FALSE, 'hideWindowTitle' => TRUE, 'panels' => [ 'info' => FALSE, 'attribution' => FALSE, ' canvas' => FALSE, 'annotations' => FALSE, 'search' => FALSE, ], ], 'workspace_config' => [ 'allowNewWindows' => FALSE, 'isWorkspaceAddVisible' => FALSE, 'workspaceControlPanel' => [ 'enable' => FALSE, ], ], ]);
有关更多选项,请参阅Mirador常见问题解答:https://github.com/ProjectMirador/mirador/wiki/M3---Mirador-3-Frequently-Asked-Questions
文档
有关IIIF(国际图像互操作性框架)的更多文档可在Islandora 8文档网站上找到。
故障排除/问题
有问题吗?解决了问题?加入Islandora 通讯渠道,发布问题和分享解决方案
如果您想为项目贡献代码,您需要遵守Islandora Foundation的贡献者许可协议或企业贡献者许可协议。有关更多信息,请参阅islandora-community wiki上的贡献者许可协议页面。