我正在尝试在Javascript和PHP中创建一个马赛克类型的脚本,它构成了一个大图像,其中包含许多由小方块拼贴而成的不同图像。这个想法是通过制作背景图像并在其上面铺设瓷砖并使其不透明度达到50%左右来“伪造”效果。这种方法效果不错,但它看起来并不像我想要的那么好。
我的问题是,有没有人对此方法的替代品有任何建议?我知道在Flash中肯定有这样的方法,例如Mario Lemieux马赛克: http://www.mariomosaic.com/mosaic/
但我想尽可能避免闪光。
编辑:添加了实例
所以我还没有碰过JS层,这一切都是服务器端的东西。没有预加载器或任何真正使其更有用的东西,即将到来。但到目前为止,这就是我所拥有的:
http://www.mtimofiiv.net/mosaic_example/
微小的图像切片是根据用户上传的图像创建的,它们是通过我为生成它们而构建的类运行的。我使用GD2使它们成为灰度级,这样它们就能更好地吸收背景图像的颜色,并在Photoshop中对像素进行“像素化”。
如果有人想查看代码的任何部分,请告诉我,我会将其添加到此帖子中。此外,当这个项目完成时,我打算在Github上完整地提供它,无论谁想要这样做。
答案 0 :(得分:1)
也许您的演示HTML为733KB这一事实可能会阻止您使用这种特殊方法。我想如果你想做这样的事情,你真的应该使用canvas元素,并在某种“ajax”加载中工作。这实际上可能很有趣。但是,如果您要生成这么多HTML ...如果可能的话,您可以考虑使用客户端脚本来执行此操作。只是一些想法...