要制作图像,请使用 ImageMagick。
convert -crop 10x10 big_image.png tile%d.png
将 .png 更改为 .jpg 如果这是您的开始。
然后以某种方式显示正确的。你如何做到这一点取决于你想要做什么。
以下是我将头像 (1000x1000) 拆分为 200x200 块时产生的屏幕截图:
就我而言,很明显我有 5 行要处理。
然后我会通过简单地这样做来布置它们:
<div id='wrapper'>
<img src='/tile0.jpg' />
<img src='/tile1.jpg' />
<img src='/tile2.jpg' />
etc…
</div>
然后在 CSS 中:
#wrapper {
width:1000px;
}
#wrapper img {
width:200px;
height:200px;
float:left;
}
现在我会检查它看起来不错,然后制作一个 200 像素 x 200 像素的白色图像(称为空白.png)并将其更新为:
<div id='wrapper'>
<img src='/blank.png' />
<img src='/blank.png' />
<img src='/blank.png' />
etc…
</div>
使用 jQuery 保持简单我会这样做:
$(function() {
$("#wrapper").on('click', 'img', function(){
$(this).attr('src', '/tile' + $(this).index() + '.jpg');
});
});
现在我们有了一个原型,我们可以尝试看看浏览器的限制是什么——将其设置为 10 像素乘 10 像素有效吗?(10,000 张图像)。
假设是,我们现在必须决定:
未覆盖的和已覆盖的是否对每个人都相同,还是每个用户都完成?
我要么使用 localStorage 来存储翻转和/或 ajax 回数据库。
您需要一个函数来处理其中任何一种情况,这两种情况都不是特别复杂。
这里的问题将是:
- 您的浏览器是否足够快以处理这么多图像?
- 有多少人同时为它工作?
- 如果它有点不同步有关系吗?
- 猜测文件名是否很重要?