序言
根据前边的两篇文章,我们已经可以实现图像的显示了。但是现在我们显示的还是由微软软件自动生成的图片,在实际运用中,需要由后端将图片切割,具体切割方式在微软的dzi图片格式说明中也有,地址:https://docs.microsoft.com/en-us/previous-versions/windows/silverlight/dotnet-windows-silverlight/cc645077(v=vs.95)。建议自己去理解微软官方说明,当然如果你很懒的话,那就继续往下看,我会详细说明命名和切割规则。
图像的切割
切割图像之前你需要定义切割出来的每一张图片的大小为多少像素,每张切割出来的图像必须为正方形,且有一个规则,即必须是2的N次方。例如你定义每张切割出来的图像大小为1024*1024,则切割出来的每张图像的像素为1024*1024即2的10次方。边缘如果不够1024像素不需要过多操作,直接切割下来就行。我们还是举个栗子:假设现在你有一张3000*3000的照片,你定义切割出来的每张照片大小为2的10次方即1024*1024。那么切割就应该如下图所示:
按照这样切割之后,你就得到一层图片源,但是我们的openseadragon需要的是多层次图片源、按需加载。这是什么意思呢?根据栗子,我们现在切割的是3000*3000像素,一定有比3000*3000更清晰的像素比如8000*8000,如果用户一进来看到的是3000*3000像素的图像,那么若用户将图像放大,