40M左右的大图片如何在页面上展示啊?还要实现以鼠标为中心缩放功能

时间:2023-02-01 12:51:07
40M大图片在页面上加载很慢,是不是应该切割成很多小图片啊?那在页面上绘制时用什么技术啊?是用百度地图API还是GISAPI绘制,还是别的什么技术啊?请各位路过大侠帮忙,本人小白在此谢过了

14 个解决方案

#1


40M太大了,直接显示完全没有这个必要。你想想,40M的文件你还要下载一段时间呢。

所以正确的做法是对图片进行压缩。
http://blog.csdn.net/chinacsharper/article/details/9865491

#2


首先你设计应该是有问题的.

40MB的图片 分辨率是多少? 我们假设 是8000*8000 难道你让用户拖动滚动条来查看吗?

显然不能

另外正如LS说的也是 40MB在2MB宽带下 下载也要很久

所以一般常规的做法 好像是要做成动画那种吧 用flash加载的肯定没有img src的就是了

#3


引用 楼主 fengtongming 的回复:
是用百度地图API还是GISAPI绘制,还是别的什么技术啊?请各位路过大侠帮忙,本人小白在此谢过了


晕死!你的话前后矛盾。前边的是人间说的、实实在在的解决思路。这后半句话,你立刻又回到“求代码、求现成的Api”上了。

虽然你说“小白在此谢过”,但是其实小白都是踏踏实实地运用既有的基础知识的,那么小白是会花点时间进行设计、写上几十行代码来处理分片加载大图片的技术的,而反倒是花枝招展的人懒得自己设计啊。

要想成为专业的程序员,就先自己设计这个分片加载的代码,然后贴出真正代码方面的问题。

#4


切块 然后 金字塔模型

做几个级别的 有你的原图往上走 一张比一张小 也就是你的缩放范围 最下层的是最大的范围 最上层是最小的范围 假设现在 是最大状态 你界面上也不可能全部显示的了的
所以 把图切块 值显示部分

#5


都是切换显示的……切成一张张小图片,然后根据滚动条位置判断是否要加载对应的小图片

#6


根据滚动条位置判断是否要加载对应的小图片 ,是用js在前台控制吗?

#7


引用 2 楼 diaodiaop 的回复:
首先你设计应该是有问题的.

40MB的图片 分辨率是多少? 我们假设 是8000*8000 难道你让用户拖动滚动条来查看吗?

显然不能

另外正如LS说的也是 40MB在2MB宽带下 下载也要很久

所以一般常规的做法 好像是要做成动画那种吧 用flash加载的肯定没有img src的就是了

用flash加载,是指用flex吗

#8


微软的DeepZoom技术,还是处理的不错的,你也可以自己完成对图片的切片和缓存处理

#9


40M的图片,应该是地理信息系统下的TIFF或者其它格式的栅格图像

#10


40M的图片,用户不可能一下子就看到全部的。可以借鉴下游戏中的做法,图片切片,走到哪里加载到哪里。

#11


什么图片要这么大,弄个缩小版的矢量图不行么

#12


是油田井位图。谢谢大家的回答!等我把问题解决了,再给大家结贴分

#13


先研究下deep zoom

#14


引用 8 楼 yanran_hill 的回复:
微软的DeepZoom技术,还是处理的不错的,你也可以自己完成对图片的切片和缓存处理

貌似deepzoom处理不了40M的大图片啊,导入时,提示不是一张有效的图片

#1


40M太大了,直接显示完全没有这个必要。你想想,40M的文件你还要下载一段时间呢。

所以正确的做法是对图片进行压缩。
http://blog.csdn.net/chinacsharper/article/details/9865491

#2


首先你设计应该是有问题的.

40MB的图片 分辨率是多少? 我们假设 是8000*8000 难道你让用户拖动滚动条来查看吗?

显然不能

另外正如LS说的也是 40MB在2MB宽带下 下载也要很久

所以一般常规的做法 好像是要做成动画那种吧 用flash加载的肯定没有img src的就是了

#3


引用 楼主 fengtongming 的回复:
是用百度地图API还是GISAPI绘制,还是别的什么技术啊?请各位路过大侠帮忙,本人小白在此谢过了


晕死!你的话前后矛盾。前边的是人间说的、实实在在的解决思路。这后半句话,你立刻又回到“求代码、求现成的Api”上了。

虽然你说“小白在此谢过”,但是其实小白都是踏踏实实地运用既有的基础知识的,那么小白是会花点时间进行设计、写上几十行代码来处理分片加载大图片的技术的,而反倒是花枝招展的人懒得自己设计啊。

要想成为专业的程序员,就先自己设计这个分片加载的代码,然后贴出真正代码方面的问题。

#4


切块 然后 金字塔模型

做几个级别的 有你的原图往上走 一张比一张小 也就是你的缩放范围 最下层的是最大的范围 最上层是最小的范围 假设现在 是最大状态 你界面上也不可能全部显示的了的
所以 把图切块 值显示部分

#5


都是切换显示的……切成一张张小图片,然后根据滚动条位置判断是否要加载对应的小图片

#6


根据滚动条位置判断是否要加载对应的小图片 ,是用js在前台控制吗?

#7


引用 2 楼 diaodiaop 的回复:
首先你设计应该是有问题的.

40MB的图片 分辨率是多少? 我们假设 是8000*8000 难道你让用户拖动滚动条来查看吗?

显然不能

另外正如LS说的也是 40MB在2MB宽带下 下载也要很久

所以一般常规的做法 好像是要做成动画那种吧 用flash加载的肯定没有img src的就是了

用flash加载,是指用flex吗

#8


微软的DeepZoom技术,还是处理的不错的,你也可以自己完成对图片的切片和缓存处理

#9


40M的图片,应该是地理信息系统下的TIFF或者其它格式的栅格图像

#10


40M的图片,用户不可能一下子就看到全部的。可以借鉴下游戏中的做法,图片切片,走到哪里加载到哪里。

#11


什么图片要这么大,弄个缩小版的矢量图不行么

#12


是油田井位图。谢谢大家的回答!等我把问题解决了,再给大家结贴分

#13


先研究下deep zoom

#14


引用 8 楼 yanran_hill 的回复:
微软的DeepZoom技术,还是处理的不错的,你也可以自己完成对图片的切片和缓存处理

貌似deepzoom处理不了40M的大图片啊,导入时,提示不是一张有效的图片