ImageMagick 将大图像裁剪为 xyz 平铺

标签 imagemagick openlayers openstreetmap zoomify

我有一个大 jpg,其分辨率为 x * 256/x * 256。我想将此图像切割为 256x256 的图块,命名约定为 {zoom}-{x}-{y}.jpg。过去我使用 ZoomifyExpress 转换器来进行剪切和缩放。我还想要 6 个不同的缩放级别。到目前为止,我已经开始使用这个命令:

convert example.jpg -crop 256x256 +gravity -set filename:tile ./tiles/%[fx:page.x/256]-%[fx:page.y/256] %[filename:tile].jpg



这会产生很多 x-y.jpg 图块。我不知道如何添加不同的缩放级别。我对 ImageMagick 比较陌生,这感觉像是一件基本的事情。希望有人可以帮助我。提前致谢。

最佳答案

我找到了解决方案:

我只是将图像调整到适当的大小,然后裁剪它。文件名中的第一个数字是缩放级别。

convert example.jpg -resize 256x256 -crop 256x256 -set filename:tile ./tiles/0-%[fx:page.x/256]-%[fx:page.y/256] %[filename:tile].jpg

convert example.jpg -resize 512x512 -crop 256x256 -set filename:tile ./tiles/1-%[fx:page.x/(256)]-%[fx:page.y/(256)] %[filename:tile].jpg



.. 依此类推,直到我达到最高分辨率。

关于ImageMagick 将大图像裁剪为 xyz 平铺,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26271757/

相关文章:

php - 如何让 phpThumb 识别和使用 ImageMagick 安装?

ImageMagick 不转换 JPEG

c# - 如何使用 C# 和 ImageMagick 将 PDF 转换为图像?

html - openlayers html/css,一个div在另一个上

javascript - 是否可以在 OpenLayers 中更改弹出窗口的 HTML?

android - osmdroid setUserAgentValue 无法解析方法

java - 如何在 Openstreetmap 中突出显示 MapMarkerDot?

postgresql - 在 Docker postgresql 中导入 osm 数据

Imagemagick:创建多个边框

image - OpenLayers 中每层多个图像