试图为一个OpenSeadragon站点设置WordPress。只是现在进行测试,并试图使缩放功能工作。
我尝试过将DeepZoom瓷砖生成器包括在内,但没有成功,并且继续得到一个“致命错误:未发现的错误:类'League\Flysystem\Filesystem‘getting”错误。
我看到的唯一其他可能工作的DZI生成器是Windows桌面应用程序,它不能工作,我在mac上。
到目前为止,这就是我所拥有的(仅是openseadragon和深度缩放提供的示例):
我在函数文件中包含了Deepzoom.php和DeepzoomFactory.php。
<div id="primary" class="content-area zoom">
<main id="main" class="site-main">
<?php
// Setup Deepzoom
$deepzoom = Jeremytubbs\Deepzoom\DeepzoomFactory::create([
'path' => '/wp-content/uploads/DZI/ready/', // Export path for tiles
'driver' => 'imagick', // Choose between gd and imagick support.
'format' => 'jpg',
]);
// folder, file are optional and will default to filename
$response = $deepzoom->makeTiles('/wp-content/uploads/DZI/oklahoma.jpg');
?>
<div id="openseadragon1" style="width: 800px; height: 600px;"></div>
<script src="<?php echo get_template_directory_uri() ; ?>/lib/openseadragon/openseadragon.min.js"></script>
<script type="text/javascript">
var viewer = OpenSeadragon({
id: "openseadragon1",
prefixUrl: "/wp-content/themes/truelook/lib/openseadragon/images/",
tileSources: <?php echo $response; ?>
});
</script>任何建议或建议,如果我选择正确的方向,我们将非常欢迎。谢谢!
发布于 2020-05-27 11:18:43
利维普斯有dzsave,它可以非常快地制造任意大小的深度变焦金字塔。有一个关于它的文档中的章节。
您可以使用自制、macport、fink等安装在mac上。例如:
brew install vips然后将金字塔制作成:
vips dzsave oklahoma.jpg x它将创建x_files和x.dzi (当然,使用不同的名称)。
您还可以使用php-vips (libvips的PHP )创建金字塔。类似于:
$im = Vips\Image::newFromFile('oklahoma.jpg',
['access' => Vips\Access::SEQUENTIAL]);
$im->dzsave('x');这可能是足够快的飞行生成,它取决于图像的大小,格式和您的要求。在这款2015年笔记本电脑上,我看到了10k×10k像素的RGB图像:
$ /usr/bin/time -f %M:%e vips dzsave wtc.jpg x
98856:3.93所以100 4s的内存和4s的运行时间。
发布于 2020-06-03 15:47:17
你见过这个变焦OpenSeadragon 插件吗?它过时了,但它可能会帮助您使支持操作更顺畅。
发布于 2020-10-10 11:41:08
若要运行深度缩放,应使用composer安装依赖项。首先克隆深度缩放存储库。进入repo并运行php composer install命令。用于安装依赖项的Composer文档在等高线完成后,将这一行添加到代码的上方:
require 'deepzoom/vendor/autoload.php';注意到,您应该对“路径”和文件名参数使用绝对路径。示例:
$deepzoom = Jeremytubbs\Deepzoom\DeepzoomFactory::create([
'path' => '/home/username/public_html/wp-content/uploads/DZI', // Export path for tiles. Do not add / end of path
'driver' => 'imagick', // Choose between gd and imagick support.
'format' => 'jpg',
]);
$response = $deepzoom->makeTiles('/home/username/public_html/wp-content/uploads/2020/1/image.jpg');不要将此代码包含在模板文件中。创建另一个.php文件并传递文件名。
https://stackoverflow.com/questions/62030013
复制相似问题